Voor een informatica PO (praktische opdracht) moet ik een DVDdatabase maken. Nou heb ik alles aan de praat gekregen, kan dingen toevoegen, verwijderen, updaten en een tabel bekijken met gegevens.
Mijn vraag was nou;
Hoe kan ik zorgen dat de titels van de DVD's klikbaar worden en zodra je op zo'n titel klikt je alle gegevens van die DVD te zien krijgt?
Heb al verscheidene tutorials op phphulp doorgekeken, maar wordt er niet echt veel wijzer van. Dit is ook de eerse keer dat ik met PhP werk :)
Nergens zit nog beveiliging op dus gelieve niet dingen aanpassen.
Je kan gebruik maken van een hyperlink (a href) waarin je een post meegeeft met een id. wanneer je id in de post ziet dan kan je de gegevens opzoeken en tonen.
Je kan gebruik maken van een hyperlink (a href) waarin je een post meegeeft met een id. wanneer je id in de post ziet dan kan je de gegevens opzoeken en tonen.
Je bedoelt een get in de url? Lijkt me handiger :)
Wat is dynamisch?
En niet alle gegevens worden getoont in de tabel bij opvragen.php. Dat heb ik express gedaan omdat het ander te onoverzichtelijk wordt. Ik wil er dus voor zorgen dat de titels in de tabel klikbaar worden. Zodat als je op een titel klikt je op een aparte pagina komt die alle gegevens van die titel laten zien.
?
Onbekende gebruiker
13-04-2007 21:14
Is toch niet zo ingewikkeld?
Moet je gewoon in het veld waarin je de naam naar het scherm schrijft een hyperlink maken met een GETvariabele erin zodat de pagina waar je naar verwijst weet om welke film het gaat.
Krijg je bijvoorbeeld dit als output:
<a href="dvd.php?id=3">$variabele_dvd_naam</a>
En dan in dvd.php:
<?php
if(is_numeric($_GET['id'])){
//database connectie aanmaken
$query = "SELECT * FROM tabelnaam WHERE id=".$_GET['id'];
$result = mysql_query($query) or die(mysql_error());
}
?>
Als query.
Ik snap dat ik een pagina moet maken (dvd.php bijvoorbeeld) waarnaar moet worden verwezen. Wat ik niet snap is hoe ik dat kan toevoegen in de tabel die wordt gegenereerd in opvragen.php
Wat ik uit jou stukje begrijp is dat ik gewoon een tabel moet maken en iedere DVD er handmatig in moet zetten met een id=X link.
Ik snap dus niet hoe je in het stukje php uit opvragen.php moet toevoegen dat voor iedere titel (of id, maakt niet uit) een link wordt gemaakt waarna je naar dvd.php wordt gestuurd met detail gegevens.
kijk michael dat doe je alsvolgt:
met dat stukje van gijs erbij:
<?php
if(is_numeric($_GET['id'])){
//als iemand op een titel klikt krijg je aan het eind van de
//url in de adresbalk: id='nummer' en met
//de regel hierboven haal je dat nummer uit de url
$query = "SELECT * FROM films WHERE id=".$_GET['id'];
$result = mysql_query($query) or die(mysql_error());
// hierboven alle gegevens ophalen waar het id gelijk is
//aan dat nummer uit de adresbalk..
$rij = mysql_fetch_array($result);
// gegevens tijdelijk opslaan in een array
// de namen van de inhoud van de arrays zijn gelijk
// aan de veldnamen in je database zoals je hieronder ziet
echo $rij['titel'];
echo $rij['jaar'];
echo $rij['genre'];
echo $rij['kijkwijzer'];
// alles wordt weergegeven
// dit is zonder opmaak en dergelijke
}
?>
<?php
include("db_films.php");
mysql_connect("localhost", "username", "wachtwoord")or die("er is een foutje met de verbinding");
mysql_select_db("databasenaam")or die("de database kan niet gevonden worden");
// als je mij de inhoud van db_films.php even kunt laten zien zal ik
// hem meteen ff afscripte voor je.. haal wel je password eruit
// dit is veel korter en doet precies hetzelfde voor jou doeleinde
if(is_numeric($_GET['filmid']))
{
//als iemand op een titel klikt krijg je aan het eind van de
//url in de adresbalk: id='nummer' en met
//de regel hierboven haal je dat nummer uit de url
$query = "SELECT * FROM films WHERE id=".$_GET['filmid'];
$result = mysql_query($query) or die(mysql_error());
// hierboven alle gegevens ophalen waar het id gelijk is
//aan dat nummer uit de adresbalk..
$rij = mysql_fetch_array($result);
// gegevens tijdelijk opslaan in een array
// de namen van de inhoud van de arrays zijn gelijk
// aan de veldnamen in je database zoals je hieronder ziet
echo '<tr><td>Dit is de pagina voor de film: '.$rij['titel'].'</td></tr>
<tr><td>'.$rij['id'].'</td>
<td>'.$rij['titel'].'</a></td>
<td>'.$rij['jaar'].'</td>
<td>'.$rij['genre'].'</td>
<td>'.$rij['kijkwijzer'].'</td>
</tr>';
// alles wordt weergegeven (net als het totaal overzicht maar
// dat moet je dan maar veranderen naar een ander veld bijv.
// $rij['samenvatting'] of $rij['omschrijving'] (de naam uit
// je database..
}else{
$query="SELECT id,titel,jaar,genre,kijkwijzer
FROM films
ORDER BY id;";
$sql = mysql_query($query)or die(mysql_error());
echo '<br><br>';
echo '<table border=1 celpadding=0 width="100%">';
while($rij= mysql_fetch_array($sql))
{
echo '<tr><td>'.$rij['id'].'</td>
<td><a href="?filmid='.$rij['id'].'">'.$rij['titel'].'</a></td>
<td>'.$rij['jaar'].'</td><td>'.$rij['genre'].'</td>
<td>'.$rij['kijkwijzer'].'</td>
</tr>';
}
echo '</table>';
?>
<br>
<center><a href="verwijderen.php" target="iframe">Verwijderen</a> -
<a href="aanpassen.php" target="iframe">Aanpassen</a> -
<a href="problems.php" target="iframe">Hij werkt niet</a>
</center>
<?php
}
?>
trouwens best knap wat je gemaakt hebt zonder php kennis
netjes..!