Hallo,
Ik ben nieuw op GoT maar lees wel al een tijdje mee. Nu heb ik een vraag over een bepaalde query in php:
Ik heb 3 tabellen, messages, locations en users.
Nu heb ik een pagina location.php?lid=x. Als deze pagina geladen wordt, wil ik dat alle messages die bij deze locatie horen, geprint worden. Verder wil ik dat bovenaan de pagina de locatie gegevens, 1 maal, geprint worden
Goed, dit is mij min of meer gelukt:
En zo print ik de messages:
Niet zo heel spannend toch? Dacht ik ook. De manier waarop ik de locatie gegevens print is als volgt: Ik heb een simpele functie geschreven die de locatie informatie in een string teruggeeft, mits er een location id geleverd wordt:
Goed, werkt ook leuk. Maar nu is mijn vraag of ik niet met de allereerste query, hetzelfde resultaat kan berijken. Is het mogelijk om 2 'afdrukken' van een query te maken? Want in principe vindt mijn eerste query precies dezelfde gegevens als de functie. Alleen kan ik de informatie niet in een while loop gaan zetten, dus is er een andere manier hiervoor?
Ik heb geprobeerd zo duidelijk mogelijk te zijn, als er toch iets niet duidelijk is hoor ik het graag. Houd er aub ook rekening mee dat ik geen doorgewinterde guru ben
.
Bedankt!
-Jesper
Ik ben nieuw op GoT maar lees wel al een tijdje mee. Nu heb ik een vraag over een bepaalde query in php:
Ik heb 3 tabellen, messages, locations en users.
Nu heb ik een pagina location.php?lid=x. Als deze pagina geladen wordt, wil ik dat alle messages die bij deze locatie horen, geprint worden. Verder wil ik dat bovenaan de pagina de locatie gegevens, 1 maal, geprint worden
Goed, dit is mij min of meer gelukt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| // De query $sql = mysql_query(" SELECT messages.id AS message_id, messages.title, messages.date, messages.status, users.name AS user_name, users.id AS user_id FROM messages, users WHERE messages.location_id = ".$_GET['lid']." AND users.id = messages.poster_id ORDER BY messages.id DESC LIMIT $from, $max ") or die(mysql_error()); |
En zo print ik de messages:
PHP:
1
2
3
4
| while($data = mysql_fetch_assoc($sql)) { // Hier print ik alle berichten } |
Niet zo heel spannend toch? Dacht ik ook. De manier waarop ik de locatie gegevens print is als volgt: Ik heb een simpele functie geschreven die de locatie informatie in een string teruggeeft, mits er een location id geleverd wordt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| // Functie om locatie info te vinden function fetch_location_info($lid) { $qry = mysql_query("SELECT * FROM locations WHERE id='".$lid."'"); if(mysql_num_rows($qry) > 0) { $location = mysql_fetch_assoc($qry); $info = "<p><a href=\"location.php?lid=".$location['id']."\"><b>".stripslashes($location['name'])."</b></a><br />".stripslashes($location['adress'])."<br />".$location['zip_code']." ".stripslashes($location['city'])."<br /></p>"; return $info; } else { $error = "Kan de locatie niet vinden. Neem contact op met de beheerder als dit probleem zich voor blijft doen"; return $error; } } |
Goed, werkt ook leuk. Maar nu is mijn vraag of ik niet met de allereerste query, hetzelfde resultaat kan berijken. Is het mogelijk om 2 'afdrukken' van een query te maken? Want in principe vindt mijn eerste query precies dezelfde gegevens als de functie. Alleen kan ik de informatie niet in een while loop gaan zetten, dus is er een andere manier hiervoor?
Ik heb geprobeerd zo duidelijk mogelijk te zijn, als er toch iets niet duidelijk is hoor ik het graag. Houd er aub ook rekening mee dat ik geen doorgewinterde guru ben
Bedankt!
-Jesper