if else controle beginletter

Status
Niet open voor verdere reacties.
K

ku30

Gast
hallo,
bij onderstaande code loop iets fout en ik ben er al eventjes mee bezig maar vind geen oplossing. de melding 'geen resultaten gevonden' moet worden weergegeven. het gaat hier over een boekenarchief waarbij je op de beginletter kan klikken en daarna alle boekentitels vindt die beginnen met betreffende letter. met de functionaliteit van de if else structuur die ik niet oké krijg.

PHP:
<body>
<?php
$array = range('a', 'z');

foreach($array as $letter => $aparteletter) {

echo '<a href="index.php?aparteletter='.$aparteletter.'">' .$aparteletter. '</a><br />';

}

if (isset($_GET["aparteletter"])) {
$sql = "SELECT titel FROM artikel WHERE titel LIKE '".mysql_real_escape_string($_GET["aparteletter"])."%'";
$resultaat = mysql_query($sql) or die("query mislukt:" .mysql_error());


while($rij = mysql_fetch_assoc($resultaat)) {

if (!isset($resultaat)){
	echo "geen resultaat";
}
	echo $rij["titel"] ."</br>";

}
mysql_free_result($resultaat);
}
mysql_close();
?>
 
Laatst bewerkt door een moderator:
sorry hier kan ik je niet mee verder helpen : dit is eerder voor " Icemar " een team genoot.
 
Ik heb het voor je aangepast dit werk nu correct
Zie bij de query waar je fout zat.

PHP:
$array = range('a', 'z');
 
foreach($array as $letter => $aparteletter) {
 
echo '<a href="book.php?aparteletter='.$aparteletter.'">' .$aparteletter. '</a> - ';
 
}
 
$letter = $_GET["aparteletter"];

if (isset($_GET["aparteletter"])) {
 $sql = "SELECT title FROM artikel  WHERE `title` LIKE '%".mysql_real_escape_string($letter)."%'";
}


$result = mysql_query($sql);

if (mysql_num_rows($result) == 0) {
    echo "<br />Helaas niets gevonden";
    exit;
}

while ($row = mysql_fetch_assoc($result)) {
    echo "<br />". $row["title"];
}

mysql_free_result($result);

suc6 er mee
 
ik ga dit direct uitproberen. waar een mens al niet mee verveelt zit hé.
tot later, thanks
 
PHP:
<body><?
$array = range('a', 'z');
 
foreach($array as $letter => $aparteletter) {
 
echo '<a href="index.php?aparteletter='.$aparteletter.'">' .$aparteletter. '</a> - ';
 
}
 

if (isset($_GET["aparteletter"])) {
 $sql = "SELECT titel FROM artikel  WHERE `titel` LIKE '".mysql_real_escape_string($_GET["aparteletter"])."%'";


$resultaat = mysql_query($sql) or die("query mislukt:" .mysql_error());


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();
?>

het script werkte direct, op een paar details na.
tot later
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan