login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Zoeken op beginletter werkt niet.

Offline daboytommy87 - 11/03/2006 14:41
Avatar van daboytommy87Nieuw lid Hallo allemaal.

Ik wil zoeken op de beginletter in een database.

Ik heb het volgende script geschreven, met dank aan eerder geposte onderwerpen en reacties:

<?php
session_start();
error_reporting("E_ALL");
include("db_connectie2.php");
$query = "SELECT Letter FROM letters ORDER BY Letter";
$result = mysql_query($query);
?>

<html>
<head>
<title>Letters</title>

</head>

<body>
<?php
echo "<table>";
echo "<tr>";

if(!isset($_GET['letter'])){
while ($rij = mysql_fetch_array($result)){
echo "<td><a href=\"select.php?beginletter=".$rij["Letter"]."\">".$rij["Letter"]."</a> | </td>\n";
}
}
elseif(isset($_GET['letter'])){
$query = "SELECT Titel FROM film WHERE Titel='".addslashes($_GET['letter'])."' ORDER BY Titel";
$result = mysql_query($query)or die(mysql_error());

if(mysql_num_rows($result) == 0){
echo "Er zijn nog geen films gevonden met begin letter <b>".$_GET['letter']."</b>";
}
else{
//woorden weergeven
while($rij = mysql_fetch_array($result)){
echo $rij['Titel']."<br>"; //moet hij weergeven
}

}
}
else{
echo "fout in je script!";
}
?>
</tr>
</table>
</body>
</html>

Wie kan mij vertellen wat er fout is?

Alvast bedankt

4 antwoorden

Gesponsorde links
Offline BramBo - 11/03/2006 14:56
Avatar van BramBo JS gevorderde
  1. elseif(isset($_GET['letter'])){
  2. $query = "SELECT Titel FROM film WHERE Titel='".addslashes($_GET['letter'])."' ORDER BY Titel";
  3. $result = mysql_query($query)or die(mysql_error());

veranderen in :
  1. elseif(isset($_GET['letter'])){
  2. $query = "SELECT Titel FROM film WHERE Titel REGEX('^".addslashes($_GET['letter']).".*?$') ORDER BY Titel";
  3. $result = mysql_query($query)or die(mysql_error());


Hier match hij de eerste letter van de titel in de tabel film.
Dus {LETTER}*
Offline daboytommy87 - 11/03/2006 15:07
Avatar van daboytommy87 Nieuw lid Ik heb het aangepast, maar helaas het werkt niet.

Toch bedankt
Offline kokx - 11/03/2006 15:15
Avatar van kokx Onbekend doe het is zo:
  1. <?php
  2. elseif(isset($_GET['letter'])){
  3. $query = "SELECT Titel FROM film WHERE Titel REGEX('^".addslashes($_GET['letter']).".*?') ORDER BY Titel";
  4. $result = mysql_query($query)or die(mysql_error());
  5. ?>
Offline daboytommy87 - 11/03/2006 15:26 (laatste wijziging 11/03/2006 19:26)
Avatar van daboytommy87 Nieuw lid Het is gelukt, met hulp.

Zat een stomme fout in me query.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.306s