Ezzel a php kóddal mi lehet a gond?
Sziasztok, remélem valaki tud segíteni mert már a hajam tépem ettől a kódtól.
Ezt a hibát kapom:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/szunyi.com/ujfiu/www/index.php on line 40
Üdvözlünk
Az oldalon jelenleg nincs semmilyen közlemény...
Látogass vissza később... Köszönjük!
Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /var/www/szunyi.com/ujfiu/www/index.php on line 53
és ez a kód:
$sql_connect = mysql_connect('sql','123','123');
if(!$sql_connect)
{
die("Nem sikerült csatlakozni a szerverhez!". mysql_error());
}
$adatbazis = mysql_select_db('123', $sql_connect);
if(!$adatbazis)
{
die("Nem sikerült csatlakozni az adatbázishoz!". mysql_error());
}
$result = mysql_query("SELECT * FROM index ORDER BY datum DESC LIMIT 0, 7");
$number_of_lines = mysql_num_rows($result);
if ($number_of_lines > 0) {
while ($datas = mysql_fetch_array($result)) {
?>
<h2><?php print "".$datas["index_neve"]."" ?> <sub style='font-size: 9px;'>(<?php print "".$datas["datum"]."" ?>)</h2>
<p>
<?php print "".$datas["index"]."" ?>
</p>
<?php
}
} else {
print "<h1>Üdvözlünk</h1><p>Az oldalon jelenleg nincs semmilyen közlemény...</p><p>Látogass vissza késöbb... Köszönjük!</p>";
}
mysql_free_result($result);
?>
mysql_num_rows nem tudom minek lehet van értelme én nem használok mivel ha nincs egy sor sem akkor nem indul a ciklus, a mysql_free_result gondolom a változót felszabaditja, nem tudom mennyire szükséges.
A probléma vagy az adatbázisban van, vagy pedig ebben $result = mysql_query("SELECT * FROM index ORDER BY datum DESC LIMIT 0, 7");
Limit után miért van két szám? Top-al nem megoldható? Ami konkrétan a lekérdezés ird be az sql-be és ott ki fogja irni mi a hiba.
az utolsó hetet kérdezi le, azért van limit
én első körben $result = mysql_query("SELECT * FROM index");-el próbálnám meg, hogy wtf
A LIMIT-nek semmi baja. (azért utolsó 7 mert csökkenő dátum szerint rendezett 0. rekordtól kezdve 7 rekordot olvas ki)
Azt vizsgáld meg, hogy létezik-e 'index' tábla és 'datum' mező. Szinte biztos hogy ebbe bukik bele. Ha nem lenne annyi rekord az se lenne gond. Esetleg próbáld a tábla nevét `` jelek közé tenni (Shift+7), mert lehet hogy foglalt névnek veszi (már jártam így).
Sziasztok, Köszönöm a válaszokat, meg oldódott :)
Amugy a 0,7 az az volt hogy a 1. id-től a 7. id-ig olvassa ki :)
Amúgy a hibát így oldottam meg:
$result = mysql_query("SELECT * FROM hirek ORDER BY datum DESC LIMIT 0, 7") or die(mysql_error());
Azért berakom hátha valakinek segít :)
Üdvözlettel Duku, és még 1x Köszönöm :)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!