Autor | Zpráva | ||
---|---|---|---|
Manny Profil * |
#1 · Zasláno: 7. 3. 2011, 13:55:16
Lidičky, zachraňte mě. Na řádku 47 mě to zdechne a já už tam nic nevidim.
<?php $spojeni=mysql_connect('localhost','root',''); if (!$spojeni) die ('Spojení nefunguje!'); $databaze=mysql_select_db('dubai',$spojeni); if (!$databaze) die ('Připojení k databázi nejede!'); mysql_query("SET NAMES 'utf8'"); if (!empty($_POST)) { $jmeno = addslashes($_POST['jmeno']); $text = addslashes($_POST['text']); $priklad = $_POST['priklad']; $email = $_POST['email'];//skryté pole pro spamboty $datum = DATE("Y-m-d"); if (empty($jmeno) && empty($text) && empty($priklad)) echo '<h3>Formulář nebyl vyplněn!</h3>'; elseif (empty($jmeno)) echo '<h3>Nebylo vyplněno jméno!</h3>'; elseif (empty($text)) echo '<h3>Nebyl zadán žádný text!</h3>'; elseif (empty($priklad) || $priklad != 6) echo '<h3>Ochrana proti spamu byla špatně zadána<br>nebo zůstala prázdná!</h3>'; elseif (!empty($email)) echo '<h3>Zřejmě nejsi člověk</h3>'; elseif (eregi("^.*(http://)|(www).*$",$text)) echo '<h3>Bohužel,<br> není povoleno přidávat odkaz.</h3>'; else { $sql = "SELECT COUNT(*) as pocet FROM forum WHERE text = '$text'"; $dotaz=mysql_query($sql,$spojeni); if (!$dotaz) die ('Dotaz na text nedošel'); $zaznam=mysql_fetch_array($dotaz); $pocet=$zaznam["pocet"]; if ($pocet > 0) echo '<h3>Tato zpráva je již uložena!<br>Zkuste napsat něco nového!</h3>'; else { mysql_query("SET NAMES 'utf8'"); $dotaz = "INSERT INTO forum VALUES (NULL, '$datum', '$jmeno', '$text')"; $vysledek = mysql_query($dotaz,$spojeni); if (!$vysledek) die('Nepodařilo se vložit komentář!'); else { echo '<h2>Komentář byl vložen</h2>'; } } } } else { echo '<table id="forum">'; } $sql = "SELECT DATE_FORMAT(datum,'%e.%c.%Y') as datum, jmeno, text FROM forum ORDER BY id DESC LIMIT 10 "; $dotaz = mysql_query($sql,$spojeni); if (!$dotaz) die('Nepodařilo se načíst řádky z databáze.'); while($zaznam=mysql_fetch_array($dotaz)) { $jmeno = stripslashes($zaznam["jmeno"]); $text = stripslashes($zaznam["text"]); echo '<tr><th>'.$jmeno.' <span>'.$zaznam["datum"].'</span></th></tr> <tr><td>'.$text.'</td></tr>'; } ?> </table> <form action="index.php?str=diskuse" method="post"> <input id="jmeno" type="text" name="jmeno" maxlength="25" value="Vaše jméno" onblur="if (this.value == '') {this.value = 'Vaše jméno';}" onfocus="if (this.value == 'Vaše jméno') {this.value = '';}" "> <input id="email" type="text" name="email" maxlength="20" size="20"> <textarea name="text" rows="8" cols="28"></textarea> <span>Ochrana proti spamu: dva krát tři =</span><input id="test" type="text" name="priklad" maxlength="2" size="2"> <input id="submit" type="submit" value="Odeslat zprávu"> </form> |
||
panther Profil |
#2 · Zasláno: 7. 3. 2011, 13:56:16
Manny:
vypiš si tam mysql_error() .
|
||
Manny Profil * |
#3 · Zasláno: 7. 3. 2011, 14:30:04
panther:
Column 'id' cannot be null Proč by nemohl být nulový, když mám na sloupci auto incrementaci? |
||
Radek9 Profil |
#4 · Zasláno: 7. 3. 2011, 16:05:12 · Upravil/a: Radek9
Manny:
Protože null je taky hodnota (a null neznamená nula), to neznamená, že se to tam nezapíše. Musíš to id vynechat, takže nějak takto: INSERT INTO `forum` (`datum`, `jmeno`, `text`) VALUES ('$datum', '$jmeno', '$text') |
||
panther Profil |
#5 · Zasláno: 7. 3. 2011, 16:19:05
Manny:
případně, bez vyjmenovávání sloupců takto INSERT INTO `forum`VALUES ('', '$datum', '$jmeno', '$text') |
||
Časová prodleva: 13 let
|
0