query pas uitvoeren nadat op letter geklikt is

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sander R

Sander R

08/12/2005 18:10:00
Quote Anchor link
ik heb nu voor lkaar dat als ik op letter klik dat er dan alleen records worden getoont met die begin letter.

alleen deze query staat nog gewoon in de index.php dus er staan altijd records getoond op de index.

maar eigenlijk moet ik de gewone index zien en wanneer ik op een letter klik dan moeten die records naar voren komen. (dit komt omdat ik de query en de echo in de index heb staan, hoe kan ik dit oplossen) en dan mijn index als het ware weg.

wanneer er geen records zijn moet er getoond worden dat dr geen records zijn

code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
$sqldvd
="SELECT * FROM dvds WHERE titel LIKE '$page%' ORDER BY titel ASC";
$resultdvd = @mysql_query($sqldvd) or die(mysql_error());
$aantal = mysql_num_rows($resultdvd);

while($rowdvd = mysql_fetch_array($resultdvd)){

  echo '
  <a target="_blank" href="'
.$rowdvd['weblink'].'">'.$rowdvd['titel'].'</a><br>';
  }

?>
 
PHP hulp

PHP hulp

16/11/2024 05:08:51
 

08/12/2005 18:15:00
Quote Anchor link
if ($aantal == 0) {
//melding voor geen records
} else {
//je while loopie
}
 
Sander R

Sander R

08/12/2005 18:26:00
Quote Anchor link
ik denk dat je beter ff kunt kijken op:


dan zie je dat alle dvds daar gewoon staan maar dat moet pas als ik op 1 van de letters heb geklikt en dan worden de dvds getoont die met die letter beginnen
Gewijzigd op 08/12/2005 18:58:00 door Sander R
 

08/12/2005 18:27:00
Quote Anchor link
Waar haal jij $page vandaan?
 
Sander R

Sander R

08/12/2005 18:33:00
Quote Anchor link
voorbeeld met de letter a:

<a href="index.php?page=a"><font face="Verdana" size="-2" color="#FFFFFF">A</font></a>

en als ik dan daarop klik moet ie pas de query echo'en
 

08/12/2005 18:45:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
function do_dvd($dvdno) {
    if (empty($dvdno)) {
        echo "Selecteer een letter.";
        return;
    }


    $sqldvd = "SELECT * FROM dvds WHERE titel LIKE '{$dvdno}%' ORDER BY titel ASC";
    $resultdvd = @mysql_query($sqldvd) or die('DB Foutje: '.mysql_error());
    $aantal = mysql_num_rows($resultdvd);

    if ($aantal == 0) {
        echo "Sorry, geen DVD's gevonden";
        return;
    }


    while($rowdvd = mysql_fetch_array($resultdvd)){
        echo '<a target="_blank" href="' .$rowdvd['weblink'].'">'.$rowdvd['titel'].'</a><br>';
    }
}
function
safe_sql($v) { //variablen kunnen per referentie doorgegeven worden
    if(get_magic_quotes_gpc()) {
        return stripslashes($v);
    }

    return mysql_real_escape_string&$v, $this->connection_id);
}

do_dvd(safe_sql($_GET['page']));
?>
 
Sander R

Sander R

08/12/2005 18:53:00
Quote Anchor link
zozo dat is erg vriendelijk van je .. het werkt dus
ik ga dit ff goed bestuderen.

zat btw 1 foutje in:

dit:
return mysql_real_escape_string&$v, $this->connection_id);

moet zijn:
return mysql_real_escape_string($v, $this->connection_id);
 

08/12/2005 19:14:00
Quote Anchor link
woops typfout ja :)
 
Willem vp

Willem vp

09/12/2005 09:55:00
Quote Anchor link
Als je nou voor elke letter wil weten hoeveel titels er in je database zitten, kun je het smerige werk ook aan MySQL overlaten:

SELECT LEFT(titel,1) AS letter,
COUNT(titel) AS numtitels
FROM dvds
GROUP BY letter
 
Sander R

Sander R

09/12/2005 10:43:00
Quote Anchor link
ja idd ik zal daar is mee stoeien thx voor de tip
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.