hallo,

ik heb een tabel met daarin een aantal dingen, waaronder id, foto, maatschappij, reg, vliegveld, datum, etc. In het vak vliegveld staan een aantal dingen, namelijk Eindhoven Airport, Schiphol, etc.

Ik heb een pagina waar alle foto's (met informatie) worden weergeven (dus heel de tabel wordt weergegegeven), maar nou wil ik alleen een bepaald vliegveld weergeven (dus alle foto's van Eindhoven Airport bijvoorbeeld).

Hoe moet dit?


SELECT *
FROM tabel
WHERE vliegveld = 'Eindhoven Airport'


ps. Gebruik * alleen als je echt alle kolommen selecteert. Geef anders gewoon netjes de naam van de kolommen op die je wilt selecteren...

ps. Gebruik * alleen als je echt alle kolommen selecteert. Geef anders gewoon netjes de naam van de kolommen op die je wilt selecteren...


bedoel je daarmee waarin die zoekt? of wat?

Dit is het script:

<?php

error_reporting( E_ALL ^ E_NOTICE );

$sql = mysql_query( "SELECT * FROM foto ORDER BY id DESC" );
$hoeveel = mysql_num_rows( $sql );
$max = 5;
$filter = $hoeveel / $max;
$round = ceil( $filter );
$begin = $_GET['page'];



if( !isset( $_GET['page'] ) or !$_GET['page'] )
$begin = 0;

// begin bij de volgende $max foto's
$begin = $begin * $max;

$sql_ophalen = mysql_query( "SELECT
*
FROM
foto

ORDER BY id DESC

LIMIT ".$begin.", ".$max."
" ) or die( mysql_error() );



$i = 0;

//$SelectLeden = mysql_query( "SELECT * FROM foto ORDER BY id DESC" );

if( mysql_num_rows( $sql_ophalen ) > 0 )
{
echo'<BR><table width="450" border="0" cellpadding="0" cellspacing="0">';

while( $ObLid = mysql_fetch_assoc( $sql_ophalen ) )
{
echo'<tr align="left" >
<tr>
<td rowspan="7" id="table_border" align="left" width="15"><a href="'.$ObLid['link'].'" target="_blank" border="0"><img src="'.$ObLid['foto'].'" border="0"</a></td>
<td align="left" id="table_border2" bgcolor="#6699CC" width="255"><b>About the Picture</b> Foto ID:'.$ObLid['id'].'</td>
</tr>
<td align="left" id="table_border2" width="255">'.$ObLid['maat'].'</td>
</tr>
<tr>
<td align="left" id="table_border2" width="255">'.$ObLid['toestel'].'</td>
</tr>
<tr>
<td align="left" id="table_border2" width="255">'.$ObLid['plaats'].'</td>
</tr>
<tr>
<td align="left" id="table_border2" width="255">'.$ObLid['reg'].'</td>
</tr>
<tr>
<td align="left" id="table_border2" width="255">'.$ObLid['datum'].'</td>
</tr>
<td align="left" id="table_border2" width="255">&copy; '.$ObLid['naam'].'</td>
</tr> </tr>
<tr>
<td colspan="2" align="left" id="table_border3">'.$ObLid['commentaar'].'</td>
</tr>
<tr>
<td colspan="2" align="left">&nbsp;</td>
</tr>';
}

echo'</table>';
}
else
{
echo'Er zijn geen fotos geplaatst.';
}


$i = 0;

while( $i <= $filter )
{
echo "<a href='?p=foto&page=".$i."'>" . $i . "</a> ";

$i++;
}

?>

Waar ergens moet ik het inzetten?
[edit]wachtwoord weggehaald[/edit]
Ik geef je gewoon een voorbeeld van een mysql query die je zou kunnen gebruiken. Als ik zo snel kijk lijkt het me dat je die op regel 22 moet toepassen.

Tevens zou ik even je database inloggegevens onzichtbaar maken. Het is niet zo slim om die publiekelijk te tonen.

Zorg daarnaast ook voor foutafhandeling, bijvoorbeeld bij je mysql queries. Je hebt namelijk de garantie dat die altijd wel eens zullen mislukken.
ok, bedankt!

ja ik had er helemaal nie bij na gedacht over mijn inloggegevens.
is nou aangepast.
Het werkt perfect, alleen nou heb ik een vraagje of dit ook kan.

Ik laat dus de gegevens met de naam B737 weergeven uit een tabel. Zoals sommige van jullie vast wel weten zijn er verschillende Boeing 737 (737-300, -400, etc). In de tabel staan ze erin als B737-800, B737-300, etc. Nou wil ik alle B737 weergeven (dus alle types). Als ik echter 'B737' intyp, dan lukt het niet.


SELECT *
FROM tabel
WHERE toestel = 'B737'


dat doet ie dus niet, wat hierboven staat.

Wie kan mij helpen

WHERE toestel LIKE 'B737%'


Maar het komt er eigenlijk op neer dat je datamodel niet correct is. Voor de vliegtuigen en ook voor de luchthavens en maatschappijen hoor je bijvoorbeeld al een aparte tabel te hebben. Ga je database dus eens normaliseren, dat scheelt je later veel problemen ;)
Offtopic:
<? error_reporting( E_ALL ^ E_NOTICE ); ?>
Je bent aan het programeren, iedereen maakt fout (ook jij), maar de waarschuwingen voor deze fouten (notices) wil je niet op het scherm zien? Dan wens ik je veel succes met het debuggen...

Gebruik zeker bij het bouwen en testen van een systeem ALTIJD E_ALL en ga NOOIT notices onderdrukken. Dan kun je nog beter je ogen sluiten, dan bestaat er nog een kans dat iemand anders je wijst op deze notices...

Reageren