Autor Zpráva
bláža
Profil *
mám problém s insert into..vůbec se mi to nechce zapsat do databáze nevíte co s tim, už sem fakt z toho na mrtvici?
        if(!mysql_connect("localhost", "root", ""))
        {echo "nepodařilo ste připojit";}
        mysql_select_db("databaze1");
        mysql_query("set character set 'utf8'");
        echo mysql_error();   
        if(isset($_POST["zprava"]))                  
        {
        $zprava = mysql_query("insert into zkouska(zprava) values ('$_POST[zprava]')");
        echo mysql_error();
        }        
        else{require("index.php");}
Tori
Profil
mysql_error() vypíše nějakou chybu nebo ne? Neošetřujete vkládaná data, takže např. pokud $_POST[zprava] obsahuje apostrof, insert selže.
mysql_query("insert into zkouska (zprava) values ('" . mysql_real_escape_string($_POST['zprava']) . "')");
bláža
Profil *
právě, že nevypíše jenom pokud se zbavim tý podmínky u issetu, tak mi to napíše Undefined index: zprava
Bertram
Profil
Protože nemáte v poli $_POST index zprava, tak nedojde ani k insertu, tedy vykonání kódu z těla podmínky.
Tori
Profil
bláža:
Zkontrolujte formulář - jmenuje se to pole opravdu "zprava"? Neposíláte to metodou GET (resp. pokud metoda odeslání není definovaná, použije se implicitně GET)?
Adam16
Profil
Skus začat pouzivat mysqli. A ta zprava je preberana z pola textarea ???

HTML
<form action='odoslat.php' method='post'> 
<textarea name='zprava'></textarea> 
<input type='submit'> 
</form>";

odoslat.php
<php
$zprava = $_POST['zprava'];

$connect = mysqli_connect("127.0.0.1", "root", "", "db");
$query = mysqli_query ($connect, "INSERT INTO db (zprava) VALUES ('$zprava')"); 
?>
Lkopo
Profil *
Ono na isSet sa používa keď už tak 2x podmienka if(isSet($_POST['zprava']) && $_POST['zprava']) { ... } malo by ti to fungovať. Kvôli tejto veci, nie je potrebné prerábať celý systém na mysqli (ak to nemáte cez nejaký vlastný mini-framework).
Davex
Profil
Lkopo:
keď už tak 2x podmienka
Nebylo by jednodušší tyto dvě podmínky spojit do jedné if (!empty($_POST['zprava'])) { }?
Lkopo
Profil *
stretol som sa už aj s problémom, že mi hádzalo chybu na !empty(). Od vtedy sa tejto funkcii vyhýbam a radšej si urobím svoju kontrolu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: