Napaka pri komentarih
4 naročniki
4 naročniki
Lep pozdrav. Tole je moja skripta za komentarje, ki pa na žalost naleti na napako pri izpisu samih komentarjev iz baze... Bi mi lahko nekdo prosim pomagal ?
PS: izpis napake je spodaj - najde jo na 80 vrstici, ki sem jo posebej označil :)
PS2: upam da tole ni ilegalno na tem forumu :)
<?php
mysqlconnect("localhost", "root", "") or die(mysqlerror());
mysqlselectdb("komentarji") or die(mysql_error());
if (isset($_POST['komentar'], $_POST['ime']))
{
$komentar = mysql_real_escape_string(htmlentities($_POST ['komentar']));
$ime = mysql_real_escape_string(htmlentities($_POST ['ime']));
if (empty($ime))
{
$print1 = "You have to write your nickname!";
}
else
{
$print1 = " ";
}
if (empty($komentar))
{
$print2 = "You have to write your comment!";
}
else
{
$print2 = " ";
}
if ($print1 == " " and $print2 == " ")
{
$insert = mysql_query ("INSERT INTO komentarji (ime, komentar) VALUES ('$ime', '$komentar')");
if (mysql_query($insert))
{
header('Location: '.$_SERVER['PHP_SELF']);
}
}
}
/*
@print $ime."
";
@print $komentar;
*/
?>
<form method="post" action="<?php print htmlentities($_SERVER['PHP_SELF']); ?>">
Nickname:<br><input type="text" name="ime" />
<?php @print $print1;?>
Comment:<br>
<TEXTAREA Name="komentar" ROWS=5 COLS=50></TEXTAREA>
<?php @print $print2; ?>
<input type="submit" value="submit" />
</form>
<?php
print "
<hr>
";
$select = mysql_query ("SELECT 'ime', 'komentar' FROM 'komentarji' ORDER BY 'id'");
LINE80: while ($selectRow = mysqlfetchassoc($select))
{
$selectIme = $selectRow['ime'];
$selectKomentar = $selectRow['komentar'];
print "$selectIme";
}
?>
NAPAKA: Warning: mysqlfetchassoc() expects parameter 1 to be resource, boolean given in D:\xampp_omg\xampp\htdocs\guestbook\index.php on line 80
5 odgovorov
Napako imaš v $select. Pri komentarji odstrani narekovaje.
$select = mysql_query ("SELECT 'ime', 'komentar' FROM komentarji ORDER BY 'id'");
za nasvet :) sm popravu :)
mam pa še en problem:
$select = mysql_query ("SELECT 'ime', 'komentar' FROM komentarji ORDER BY 'id'");
while ($selectRow = mysql_fetch_assoc($select))
{
$selectIme = $selectRow['ime'];
$selectKomentar = $selectRow['komentar'];
print "<strong>$selectIme</strong> has said: .<br />";
print "$selectKomentar";
print "<hr>";
print "<br />";
}
zdaj mi ne prebere iz baze, pač pa mi samo printa "ime" in "komentar", namesto, da bi sprintalo tisto kar je v bazi...
primer:
v bazi je zapisano:
IME: Franci
KOMENTAR: Politika je podkupljena
izpiše pa mi
IME: ime
KOMENTAR: komentar
Problem je isti kot zgoraj...
nevem od kje ti navada, da dajes columne v narekovaje...
Pravilno;
$select = mysql_query ("SELECT ime, komentar FROM komentarji ORDER BY id");
V narekovaje se daje samo nestevilske vrednosti npr.
UPDATE komentarji SET komentar = 'IM ownz' WHERE ime = 'Franci'
LP