MySQL limit kulcsszó használata PHP-vel
Sziasztok
próbáltam készíteni egy limites oldal darabolos
lekérdezést.
de nem tudom mi lehet a gond.
Ime a kód:
ezt a két hiba üzenetett kapom.
Másik kérdésem hogyan leket kiegészíteni úgya kodót,
hogy necsak elóző és következo hanem oldal számok
is legyenek?
Köszömöm
Tamás
■ próbáltam készíteni egy limites oldal darabolos
lekérdezést.
de nem tudom mi lehet a gond.
Ime a kód:
<?php
$connect=mysql_connect("host", "user", "pass");
if(!$connect)
die("can't connect server".mysql_error());
print"<br>ok";
mysql_select_db("forum") or die("can't open
database".mysql_error());
print "<br>database sucessfull connect";
if(!isset($from))
$from=0;
$result=mysql_query("select * from message limit"
.$from. ", 10");
$rows=mysql_num_rows($result);
print "<table>";
while($array=mysql_fetch_array($result))
{
print "<tr>";
print
"<td>".$array["id"]."</td><td>".$array["name"]."</td>"
."<td>".$array["email"]."</td><td>".$array["message"]."</td>";
print "</tr>";}
print "</table>";
if($from>0)
print" <a
href=\"10.php?from=".($from-10)."\>prev</a>";
print" <a
href=\"10.php?from=".($from+10)."\>next</a>";
/*print $rows;
print $result;*/
mysql_close($connect);
?>
Warning: mysql_num_rows(): supplied argument is not a
valid MySQL result resource in D:\Apache
Group\Apache\Apache2\htdocs\10.php on line 11
Warning: mysql_fetch_array(): supplied argument is not
a valid MySQL result resource in D:\Apache
Group\Apache\Apache2\htdocs\10.php on line 13
valid MySQL result resource in D:\Apache
Group\Apache\Apache2\htdocs\10.php on line 11
Warning: mysql_fetch_array(): supplied argument is not
a valid MySQL result resource in D:\Apache
Group\Apache\Apache2\htdocs\10.php on line 13
ezt a két hiba üzenetett kapom.
Másik kérdésem hogyan leket kiegészíteni úgya kodót,
hogy necsak elóző és következo hanem oldal számok
is legyenek?
Köszömöm
Tamás
$from leellenőrzés
Re: Limit használata php-val
--
üdv: kmm... ( http://kmm.hu )
átírtam, biztonság, SQL parancs
Ha nem érted miért nem megy egy SQL parancs, irasd ki a hibaüzenetet a mysql_query() után. Ha nem jó a visszatérési érték, akkor a mysql_error() megmondja a hibát. Különben echo()-val kiirathatod az SQL parancsot végrehajtás előtt, és megnézheted, mi látszik hibásnak, mit nem úgy írnál egy SQL parancssorban. Végül pedig nem szabad űrlapból (vagy más külső forrásból) jövő értékeket automatikusan SQL parancsba tenni. Ez SQL injection hibákat nyit a szervereden, eléggé veszélyes műfaj. Lásd erről is szóló cikkünket.
picit off
Egy "select * from users where name='$_POST[name]' and pass='$_POST[pass]'" milyen veszélyt rejt "magic_quotes_gpc = 1" mellett?
üdv.: Zsolt
már nem mindenhol (szerencsére :)
Mivel ez nem picit off, hanem nagyonis, ezért további tárgyalása új témában lenne alkalmas, nem itt.
kiíratam a hibát
ime:
You have an error in your SQL syntax near '\\, 10' at line 1
két per jelet honna vette?
szerinted honnan?
megtettem
Hiba üzenetem mindig meg marad. és nem megy tovább csak warning-ol.
Most éppen ezt írja:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\Apache Group\Apache\Apache2\htdocs\10.php on line 14
1You have an error in your SQL syntax near ' 0, 10 ' at line 1
sql paracs változóba téve ezt adja ami szerintem jó mondjuk azért lehet benne hiba
select * from message LIMIT 0, 10
<Nincs cím>
Oldalszámok
nem indul
ehelyett
$sorok_szama = mysql_num_rows($sql_1);
De egyébként szerintem hibás is, helyette:
Helyette tanácsosabb, és gyorsabb a COUNT()-ot használni:
Igy csak egy számot kapsz vissza, ami megmondja, hány rekordod van.
Gyulus
Igazad van...