Autor Zpráva
MaxDJs
Profil
Zdravím,

bylo by možno mi poradit, jakou mám chybu v tomhle sql příkazu? Protože, když ho nezakomentuji tak mi to zobrazí jen bílou stránku.

<?php
$dotaz = "INSERT INTO `prispevky` (`id`, `nazev_akce`, `popis_akce`, `datum_zacatek`, `datum_konec`, `odpovedna_osoba`) VALUES (NULL,".mysql_real_escape_string($nazevAkce)"', '".mysql_real_escape_string($popisAkce)."', '".mysql_real_escape_string($datumZacatek)."', '".mysql_real_escape_string($datumKonec)."', '".mysql_real_escape_string($odpovednaOsoba)."');";
?>

Děkuji moc za odpověď
Alphard
Profil
Neumíte si vypsat chybu?
MaxDJs
Profil
To bylo první, co jsem udělal, ale i tak mi to zobrazí bílou stránku. Proto píšu sem.
radas
Profil *
předpokladam že v tabulce prispevky je použit autoincrement...zkuste upravit dotaz takto...
<?php 
$dotaz = "INSERT INTO `prispevky` (`id`, `nazev_akce`, `popis_akce`, `datum_zacatek`, `datum_konec`, `odpovedna_osoba`) VALUES ('',".mysql_real_escape_string($nazevAkce)"', '".mysql_real_escape_string($popisAkce)."', '".mysql_real_escape_string($datumZacatek)."', '".mysql_real_escape_string($datumKonec)."', '".mysql_real_escape_string($odpovednaOsoba)."');"; 
?>
misto NULL davat '' aby se tam id přidalo samo...
Alphard
Profil
radas:
misto NULL davat '' aby se tam id přidalo samo...
Co to zase radíš? Null je naprosto korektní, já bych ten sloupec vynechal úplně, ale to je jedno.

[#3] MaxDJs
Chyba je už v PHP, chybí "." pro spojení řetězců.
$dotaz = "INSERT INTO `prispevky` (`id`, `nazev_akce`, `popis_akce`, `datum_zacatek`, `datum_konec`, `odpovedna_osoba`) VALUES ('',".mysql_real_escape_string($nazevAkce)."', '".mysql_real_escape_string($popisAkce)
Takže:
1. Platí [#2], jen si nastavte zobrazování php chyb, tohle musí hodit parser error, ne bílou stránku.
2. Používejte editor, který vás na to upozorní.

Doplňují 3. bod. Toto ošetření (mysql_real_escape_string) je naprostro správné, ale poněkud nepřehledné. Až budete začínat nový projekt, podívejte se po něčem, co to dělá automaticky.
MaxDJs
Profil
Děkuji za rady

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:

0