while, foutmelding

Status
Niet open voor verdere reacties.
K

ku30

Gast
hallo,

ik ben bezig met dreamweaver. bij het instellen van een herhalingsgebied werd onderaan de pagina een while lus geplaatst die voor een foutmelding zorgt. het gaat hierover het doorlopen van resultaten. wanneer alle resultaten naar het scherm geschreven zijn staat er onder steeds

Notice: Undefined variable: letteralfa in C:\xampp\htdocs\bookshop\index.php on line 99

Warning: mysql_fetch_assoc() expects parameter 1 to be resource, null given in C:\xampp\htdocs\bookshop\index.php on line 99

ik kan deze while niet voor de mysql_free_result() en mysql_close zetten of er zijn foutmeldingen.
mocht iemand zin hebben mij hiermee te helpen?
 
het script is nogal uitgebreid.

PHP:
<?php require_once('Connections/booksh.php'); ?>
<?php
$booksh = mysql_connect($hostname_booksh, $username_booksh, $password_booksh) or trigger_error(mysql_error(),E_USER_ERROR);
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }
 
  $theValue = function_exists("mysql_real_escape_string") ?  mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
 
  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}
 
 
$maxRows_resultaat = 3;
$pageNum_resultaat = 0;
if (isset($_GET['pageNum_resultaat'])) {
  $pageNum_resultaat = $_GET['pageNum_resultaat'];
}
$startRow_resultaat = $pageNum_resultaat * $maxRows_resultaat;
 
mysql_select_db($database_booksh, $booksh);
$query_resultaat = "SELECT titel FROM artikel WHERE `titel` LIKE '%".mysql_real_escape_string($_GET["aparteletter"])."%'";
$query_limit_resultaat = sprintf("%s LIMIT %d, %d", $query_resultaat, $startRow_resultaat, $maxRows_resultaat);
$resultaat = mysql_query($query_limit_resultaat, $booksh) or die(mysql_error());
$row_resultaat = mysql_fetch_assoc($resultaat);
 
if (isset($_GET['totalRows_resultaat'])) {
  $totalRows_resultaat = $_GET['totalRows_resultaat'];
} else {
  $all_resultaat = mysql_query($query_resultaat);
  $totalRows_resultaat = mysql_num_rows($all_resultaat);
}
$totalPages_resultaat = ceil($totalRows_resultaat/$maxRows_resultaat)-1;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>alfabetisch zoeken</title>
</head>
 
<body>
<?
$array = range('a', 'z');
 
foreach($array as $letter => $aparteletter) {
 
echo '<a href="index.php?aparteletter='.$aparteletter.'">' .$aparteletter. '</a> - ';
 
}
 do { 
if (isset($_GET["aparteletter"])) {
 
 
if (mysql_num_rows($resultaat) == 0) {
    echo "<br />Helaas niets gevonden";
    exit;
}
 while ($row_resultaat = mysql_fetch_assoc($resultaat))
  {
    echo "<br />". $row["titel"];
  }}
  mysql_free_result($resultaat); 
 }
mysql_close($booksh);
 
?>


wij hebben trouwens al eerder kennis gemaakt!!! je hielp me eerder deze week al.
ik heb nog wat verder gezocht en nu krijg ik al een andere foutmelding, nl:
Parse error: syntax error, unexpected T_STRING, expecting T_WHILE in C:\xampp\htdocs\bookshop\index.php on line 92
waarbij line 92 helemaal onderaan is.
 
wat het allemaal zo bemoeilijkt is het feit dat je zo weinig goede beschrijvingen vind van deze foutmeldingen
 
PHP:
if (mysql_num_rows($resultaat) == 0) {
 echo "<br />Helaas niets gevonden";
 exit;
 }
 while ($row_resultaat = mysql_fetch_assoc($resultaat))
 {
 echo "<br />". $row["titel"];
 }}
 mysql_free_result($resultaat); 
}
 mysql_close($booksh);


moet zijn

PHP:
if (mysql_num_rows($resultaat) == 0) {
 echo "<br />Helaas niets gevonden";
 exit;
 }
 while ($row = mysql_fetch_assoc($resultaat))
 {
 echo "<br />". $row["titel"];
 }}
 mysql_free_result($resultaat); 
}
 mysql_close($booksh);


Je variable was verkeerd genoemd.

suc6 er mee
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan