Hallo jongens,
ik heb een script dat gegevens uit een mysql database haalt na een zoekscript. Dat gaat helemaal goed..

Alle namen worden netjes onder elkaar weergegeven, maar nu wil ik graag dat als je op 1 van die namen klikt, de rest van de velden die erbij horen worden weergegeven..

Kan iemand me hiermee helpen? ik weet dat het heel simpel is voor een beetje scripter maar dat ben ik dus juist niet.

alvast bedankt,
Cindy

oja, dit is het script dat ik tot nu toe heb:
ik weet dat ik iets met get id moet doen ofzo, maar dat lukt dus juist niet :(


<?
//------------------------//
// DATABASE CONFIGURATIE //
//------------------------//
$mysql_user = "****"; // je mysql login naam
$mysql_pass = "****"; // je mysql wachtwoord
$mysql_host = "****"; // de host van je mysql database
$mysql_dbn = "****"; // de naam van je database

if (!@mysql_select_db($mysql_dbn, @mysql_connect($mysql_host, $mysql_user, $mysql_pass)))
{
//--- De verbinding is nu dus mislukt, geef hier een melding van
echo "database connectie mislukt!";

//--- Zorg ervoor dat het script stopt.
exit();
}

else
{

$sql = "SELECT naam,plaats FROM dagjes WHERE provincie LIKE '%$HTTP_POST_VARS[group1]%' AND categorie LIKE '%$HTTP_POST_VARS[group2]%' ORDER BY naam ASC";

// Voer SQL code uit
$res = mysql_query($sql);

// Kijk of er 1 of meerdere rijen gevonden zijn
if (mysql_num_rows($res) >= 1)
{
// Toon elke rij tot dat er geen rijen meer zijn
while ($row = mysql_fetch_array($res))
{
$row['naam'] = htmlentities($row['naam']);
$row['plaats'] = nl2br(htmlentities($row['plaats']));

echo $row['naam'] . "<hr>";
echo $row['plaats'] . "<br><br>";
}
}
// Er zijn geen rijen gevonden, geef aan dat er nog geen dagjes zijn toegevoegd
else
echo "<p>Er zijn nog geen dagjes toegevoegd.</p>";
}
?>
Welke andere gegevens moeten erbij?
En als je op een naam klikt, is het dan de bedoeling dat je naar een andere pagina gaat, of niet?
De andere gegevens (velden) zijn:
omschrijving
toegankelijk
categorie
soort

Het is de bedoeling dat het in dezelfde pagina geopend wordt.

Zou te gek zijn als je me hierbij zou kunnen helpen Jens!

Groetjes Cindy
niemand?
Niet bumpen binnen 24 uur he.

Het moet met ajax wel kunnen denk ik.
Of met javascript al verbergen... maar het ligt er net aan hoeveel records er worden weergegeven om dit te kunnen doen.

[edit]
Voor een paginanummeringsscript (functie): Klikje();
[/edit]
nou het mag ook wel in een andere pagina geopend worden.. ik wist niet dat het zo lastig was..

volgens mij moet het zoiets worden als hieronder maar ik krijg het niet werkend :'(



echo ' <a href="MeerInfo.php&Id='.$Get['id'].'">Meer informatie</a> ';



En op 'MeerInfo.php' zoiets als:


if ( isset ( $_GET['Id'] ) )
{
$Query = mysql_query("SELECT * FROM tabel WHERE id='".$_GET['Id']."' LIMIT 1") or die ( mysql_error() );

if ( mysql_num_rows ( $Query ) < 1 )
{
echo 'Er werd niet gevonden in de database.';
}
else
{
$Get = mysql_fetch_assoc($Query)
// alles uitlezen.
}
}
else
{
echo 'Geen informatie aanwezig.';
}


Vraagjes:
1). Waarom een LIMIT? Een zal altijd wel uniek zijn met auto_increase (ofzo).
2). Waarom die hoofdletters in variabelen (ook $_GET waarden) en in pagina namen (MeerInfo.php kan ook gewoon meerinfo.php)
3). Waarom een * (SELECT * FROM ..)? Hierdoor zal de laadtijd van je pagina langer zijn... je kan beter alle kolomnamen opsommen met komma's. Dit is sneller.
4). Weet je zeker dat er een GET variabele word meegestuurd? Misschien werkt
<?php
echo ' <a href="MeerInfo.php&Id='.$Get['id'].'">Meer informatie</a> ';
?>
niet..

Hmm misschien omdat id een INT is moet het buiten de quotes (zoiets heb ik vandaag gehoord... wist ik ook niet... tot nu toe werkte het in de quotes bij mij ook...

Wil je de volgende keer [ignore]<?php ?> tags om je code zetten?[/ignore] Dit maakt het wat makkelijker te lezen.
Hoi Mark,

1. een LIMIT is inderdaad niet nodig, heb ik verwijderd..
2. hoofdletters ook angepast, gebruik ik normaal ook niet maar ik had dat stukkie script zo gevonden..
3. heb alle veldnamen opgesomt.. wist niet dat dat laadtijd scheelde aangezien ik sowieso alle velden nodig heb.
4. volgens mij is dat inderdaad een probleem want hij stuurt geen id mee nu. enig idee hoe ik het id kan meegeven?

Maar de resultaat pagina meerinfo.php is volgens mij ook niet in orde :'(
nop : ik drukte per ongeluk iets te vroeg op enter......

Je kan het zo doen, wel met opnieuw laden pagina maar verder eigenlijk allemaal heel simpel.

( Wel even het item id uit je database halen. Die gebruik je om te weten van welk item je meer info wil )

Het stukje met while :



while ($row = mysql_fetch_array($res))
{

$row['naam'] = htmlentities($row['naam']);
$row['plaats'] = nl2br(htmlentities($row['plaats']));

echo $row['naam'] . "<hr>";
echo $row['plaats'] . "<br><br>";

if (isset($_GET['more']) AND $row['id'] ==$_GET['more']){
echo ......
echo ....... hier dus de overige info
echo ......
}
echo ' <a href="?more="' . $row['id'] . '">meer info over dit item</a>' ;

}

Reageren