přidávání prvků pomocí PHP do databáze Vyřešeno

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Fantomas
Level 2
Level 2
Příspěvky: 163
Registrován: říjen 12
Pohlaví: Muž
Stav:
Offline

přidávání prvků pomocí PHP do databáze  Vyřešeno

Příspěvekod Fantomas » 16 lis 2014 18:22

Ahoj,

mám formulář:

Kód: Vybrat vše

<form action="./pridejOtazkuDb.php" method="get">
    <input type="text" name="otazka" value="" placeholder="Otázka">
    <input type="text" name="odpoved" value="" placeholder="Odpověď">
           
     <input type="submit" value="Odeslat">
</form>


a PHP kód, který má odeslat z formuláře Otázku a správnou odpověď:

Kód: Vybrat vše

<?php
header('Content-Type: text/html; charset=utf-8');

$server = "localhost";
$databaze = "db";
$uzivatel = "fantomas";
$heslo = "fantom";


if (mysql_connect($server, $uzivatel, $heslo)) {

    if (mysql_select_db($databaze)) {


        $pridej = "INSERT INTO Otazky VALUES(NULL,'$GET[otazka]','$GET[odpoved]')";
        $proved = mysql_query($pridej);
               
       
        if ($proved) {
         
            header("location:./pridejOtazkuForm.php");
        }else{
            echo 'nastala chyba při zapisování do DB';
        }

     
       
       
    } else{
        echo 'nepřipojeno';
    }
} else {
  echo 'chyba';
}
?>


PHP soubor nevyhodí žádnou chybu, vrátí mě tedy zpět na formulář. Problém však je na straně hostingu, kde se mi do tabulky přidá jen ID (které má být v první kolonce a v PHP tedy dávám hodnotu NULL, neboť se mi automaticky přidává), další 2 sloupce však jsou prázdné (viz obr.).

Znakovou sadu mám správně, ale nechápu kde je chyba. Díky za radu.
Přílohy
Výstřižek.PNG

Reklama
omilis
Level 1.5
Level 1.5
Příspěvky: 118
Registrován: červenec 09
Pohlaví: Muž
Stav:
Offline

Re: přidávání prvků pomocí PHP do databáze

Příspěvekod omilis » 16 lis 2014 22:34

Pokud vkládáš něco do databáze, tak je dobré vyjmenovat názvy sloupců, tím si ujasníš pořadí

Kód: Vybrat vše

INSERT INTO Otazky(otazka,spravnaOdpoved) VALUES('$GET[otazka]','$GET[odpoved]')

Začal bych kontrolou, zda $GET[otazka] něco obsahuje. PHP moc neznám ale očekával bych tam spíše $GET["otazka"] (všimni si těch uvozovek). Celkově máš ty uvozovky nějaké zmatené.

Mimochodem, vždy když komunikuješ s databází, tak bys měl používat parametrizované dotazy namísto spojování řetězců.

Fantomas
Level 2
Level 2
Příspěvky: 163
Registrován: říjen 12
Pohlaví: Muž
Stav:
Offline

Re: přidávání prvků pomocí PHP do databáze

Příspěvekod Fantomas » 19 lis 2014 07:52

problém byl v $_GET, napsal jsem totiž $GET


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Sledování pomocí hodinek
    od palecek » 29 srp 2024 09:47 » v Mobily, tablety a jiná přenosná zařízení
    3
    3824
    od GamerXXX Zobrazit poslední příspěvek
    02 zář 2024 12:25

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Seznam[Bot] a 1 host