link naar sql query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sander R

Sander R

28/10/2006 18:04:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<a href="main.php?page=a"><font face="Verdana" size="-2" color="#FFFFFF">A</font></a>


dit is de 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']));
?>


als ik op de link klik moet ie de zoeken naar titels met de letter a.

nu krijg ik deze foutmelding:

Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in /home/virtual/site275/fst/var/www/html/col/main.php on line 25
Selecteer een letter.
 
PHP hulp

PHP hulp

16/11/2024 04:57:26
 
Frank -

Frank -

28/10/2006 18:33:00
Quote Anchor link
Waar moet $this->connection_id vandaan komen?
 
Jan Koehoorn

Jan Koehoorn

28/10/2006 18:39:00
Quote Anchor link
Als je een class aan het maken bent is het waarschijnlijklijk een membervariabele? Dan heeft die de waarde null, in plaats van een connection identifier zoals het hoort.
 
Sander R

Sander R

28/10/2006 19:39:00
Quote Anchor link
nou laat ik de vraag anders stellen:

ik heb een link met de letter A. Als ik op deze letter klink moet ik alle waardes uit db krijgen die met de letter A beginnen
 
Sander R

Sander R

28/10/2006 20:09:00
Quote Anchor link
ik heb het al gevonden.. ik heb de config.php include en $this->connection_id waar Frank het over had weg gehaald.
 
Frank -

Frank -

28/10/2006 20:37:00
Quote Anchor link
Hier een voorbeeldje van een dynamische query met een goede controle op de input, dit wordt met een preg_match() gecontroleerd, alleen a-zA-Z is toegestaan, met een lengte van 1 karakter. Wel zo veilig!
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
if (isset($_GET['page']) && preg_match('/^[a-zA-Z]$/', $_GET['page'])) {
    $qWhere = "WHERE titel LIKE '".$_GET['page']."%'";
}

else {
    $qWhere = '';
}


$query = "SELECT * FROM dvds ".$qWhere." ORDER BY titel ASC";

echo $query;
?>
 



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.