Archief - PHP: Fout in zoekscript

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

zippke

Legacy Member
Hallo iedereen

Ben een site aan het maken waarin gebruikers moeten kunnen zoeken naar een bepaalde naam (binnen een database) en de records van die naam zouden dan weergegeven moeten worden maar hij geeft volgende fout:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/html/ICE/zoeken.php on line 24
Er zijn geen records gevonden, probeer opnieuw

Hieronder het script
PHP:
<?
mysql_connect("localhost","root",""); //standaard instellingen;
mysql_select_db("Producten"); //Geef hier je database op

if (!$p){
$van=1;
$p=1;
$zw=$HTTP_POST_VARS['zw'];
}

$limiet=5;//resultaten per pagina

$van=$p*$limiet;
$check = "";
$sql = "SELECT * FROM Productgegevens WHERE Artikel LIKE '$zw%' LIMIT $van,$limiet";
$result = mysql_query($sql);

while ($row = mysql_fetch_object($result)) {
    echo "<b>Kolomnaam: </b>".$row->kolomnaam."<br>";
        }

$sqltel = "SELECT * FROM Productgegevens WHERE $zg LIKE '$zw%'";
$numresults=mysql_query($sqltel);
$numrows=mysql_num_rows($numresults);
$pages=intval($numrows/$limiet);
if ($numrows%$limit) {
  $pages++;}

$totalpages=$pages+1; //omdat je je pagina's wil laten beginnen met 1 ipv 0
if ($numrows==0) //als er geen records zijn
{
echo"Er zijn geen records gevonden, probeer <a href='zoeken.htm'>opnieuw</a>";
}

else
{
if ($van>=$limiet) /*als er wel records zijn en $van is groter dan de limiet toont hij een terug knop want als je op pagina 1 zit hoef je geen terug knop toch?*/
    {
    $vorig=$p - 1; //opgeven om je $p in de link met 1 te verminderen (kan dus ook -- zijn)
    echo "<a href='zoeken.php?p=$vorig&zw=$zw'><<</a>
Vorige&nbsp;&nbsp;|&nbsp;&nbsp;"; // dit toont dus de "vorige" knop als link "<<"
     }
else
{
echo "<< Vorige&nbsp;&nbsp;| "; //als je op de eerste pagina zit is er geen link meer
}

for($i = 0; $i <= $pages; $i++) {
  $a=$i+1;
  if ($p!=$i){
  echo "<a href='zoeken.php?p=$i&zw=$zw'>$a</a>  |&nbsp;";
  }
  else{
  echo "<b>$a </b>|&nbsp;&nbsp;";
  }
}
if (!((($van+$limiet)/$limiet)==$totalpages) && $totalpages!=1)
{
$volgend=$p+1;
echo "Volgende <a href='zoeken.php?p=$volgend&zw=$zw'>>></a><br>";
}
else
{
echo "Volgende >><br>";
}
$huidigepagina=$p+1;


$toonvan = $van + 1;
$nextvan=$toonvan + 4;

if ($nextvan > $numrows){
$nextvan=$numrows;}


echo "<br>Getoonde records: ".$toonvan." tot ".$nextvan." van de ".$numrows;
echo "<br>Huidige pagina: ".$huidigepagina." van de de totaal aantal pagina's: ".$totalpages;
echo "<br><br><a href='zoeken.htm'>Nieuwe zoekopdracht</a>";
}
?>

Ik hoop dat iemand me kan verderhelpen.
Alvast bedankt

Dece

Legacy Member
$sqltel = "SELECT * FROM Productgegevens WHERE zg LIKE '$zw%'";
$numresults=mysql_query($sqltel) or die(mysql_error());

u zg mag geen variabele zijn, maar een kolomnaam

icerulez

Legacy Member
als je errors hebt in je mysql moet je ze gewoon eens echo-en, dat helpt je al enorm vooruit.

PHP:
echo mysql_error();

(dit komt nadat je die query uitgevoerd hebt wel te vesrtaan)


$HTTP_POST_VARS['zw']; zal ondertussen wel $_POST['zw'] geworden zijn (tenzij je register globals niet aan staan, of je nog oudere versie van php draait)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan