Problem mit newssystem

haldjo1

Erfahrenes Mitglied
Hi
ich hab ein problem mit meinem newssystem wenn ich den befehl mysql_num_rows anwende krieg ich diese Fehlermeldung:

Warning: Supplied argument is not a valid MySQL result resource in /home/www/htdocs/joachimhalder.de/news.jo on line 15

line 15 ist wo der befehl mysql_num_rows steht hier der quelltext:


<table width="500">
<tr class="line">
<td align="left">NEWS</td>
<td align="right" class="login"><a href="index.php?jo=newlogin">login</a></td>
</tr>
</table>


<?php
$db = mysql_connect("localhost", "dbname", "passwort");

$res = mysql_select_db("dbname");
$res = mysql_query("select * from news order by time desc");

$num = mysql_num_rows($res);

for ($i=0; $i<$num; $i++)
{

$datum = mysql_result($res, $i, "datum");
$kopf = mysql_result($res, $i, "kopf");
$neues = mysql_result($res, $i, "neues");
echo "<table align='center' width='500'>";
echo "<tr class='navigation'><td width='250'>$kopf</td><td width='250' align='right'>vom: date('D dem j.M. Y um H:i Uhr', $datum); </td></tr>";
echo "<tr class='navigation'><td colspan='2' width='500' class='comm'>$commentar</td></tr>";
echo "</table><p><br><p>";
}

mysql_close($db);
?>

könnte mir jemand sagen wo der fehler liegt??
vielen dank schon im vorraus
 
hmm,

das kann viele Ursachen haben, der Fehler sagt aus das der Query nichts zurück liefert, das kann daran liegen das der Tabellen Namen falsch ist, die DB nicht existiert etc.

naja ausserdem würd ich nicht zweimal $res benutzen für den query und das select_DB da würd ich zwei unterschiedliche Vars benutzen.
 
jo aber bei meinem guestbook gings mit 2 mal $res und der tabellenname ist auch richtig, also muss es an was anderem liegen
 
Versuche es mal so
PHP:
<?php 
$dbname="dbname";
$db = mysql_connect("localhost", $dbname , "passwort"); 

if(!$res = mysql_query($dbname ,"SELECT datum,kopf,neues,commentar FROM news ORDER BY time desc")){
$ausgabe="Fehlermeldung";
}
else{ 
$num = mysql_num_rows($res); 

while($row=mysql_fetch_rows($res)){

$datum =$row[0]; 
$kopf = $row[1];
$neues =$row[2];
$commentar=$row[3];
echo "<table align='center' width='500'>"; 
echo "<tr class='navigation'><td width='250'>$kopf</td><td width='250' align='right'>vom: date('D dem j.M. Y um H:i Uhr', $datum); </td></tr>"; 
echo "<tr class='navigation'><td colspan='2' width='500' class='comm'>$commentar</td></tr>"; 
echo "</table><p><br><p>"; 
  }
} 

mysql_close($db); 
?>
 
geth trotzdem nicht ich krieg wieder die fehlermldung für mysql_num_rows ich glaube das liegt am server, könnte das sien obwohl es bei meinem gästebuch funktioniert?
 
Kriegst du überhaupt einen connect zur db?
Mach mal
PHP:
$dbname="dbname";
$db = mysql_connect("localhost", $dbname , "passwort")or die(mysql_erorr());


Vieleicht ist aber auch $num das Problem weil es eine reservierte Variable ist?
Weiß das wehr?
 
also ich krieg ne datenbankverbindung und wenn ich statt $num ne andere variable nehm gehts trotzdem nicht also muss es an was anderem liegen
 
Bekommst du nur die Fehlermeldung oder hast du dann schon auch die Ausgaben die du dir per echo machen läßt?
 
Hmmm dann liegt der Fehler aber doch in der Abfrage.

Sind in deiner Datenbank deine Tabellenüberschriften so geschrieben
wie sie im query abgefragt werden?
 
Zurück