login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Data ophalen uit 2 tabellen achtereenvolgens (Opgelost)

Offline juser100 - 02/05/2008 12:42 (laatste wijziging 02/05/2008 12:47)
Avatar van juser100MySQL interesse Ik wil graag uit tabel 1 iets halen, uitlezen, en daarna uit tabel 2 iets halen en uitlezen op een pagina. Ik heb dit script:
  1. <?PHP
  2. $result=mysql_query("SELECT * FROM table1 WHERE id='1'");
  3. $aantal_rijen=mysql_num_rows($result);
  4. for($tel=0;$tel<$aantal_rijen;$tel++)
  5. {
  6. $rij=mysql_fetch_row($result);
  7. ".$rij[9]."
  8. ";
  9. }
  10.  
  11. $result=mysql_query("SELECT * FROM table2 ORDER BY id ASC");
  12. $aantal_rijen=mysql_num_rows($result);
  13. for($tel=0;$tel<$aantal_rijen;$tel++)
  14. {
  15. $rij=mysql_fetch_row($result);
  16. ".$rij[1]."
  17. ".$rij[2]."
  18. ";
  19. }
  20. ?>


Nu werkt dit niet, dat is ook nog vrij logisch, maar wat moet ik aanpassen hieraan?

Ik krijg nu telkens de foutmelding: Parse error: syntax error, unexpected '"', expecting ',' or ';'

3 antwoorden

Gesponsorde links
Offline bosgroen - 02/05/2008 12:50
Avatar van bosgroen Gouden medaille

PHP interesse
1) welke error krijg je?
2) echo's kun je niet zomaar over regels laten doorlopen
3) je hebt het aanhalingsteken om de tweede query af te sluiten vergeten : "

tips:
- gebruik een scripteditor met kleurtjes, zo zie je makkelijk als je ergens een aanhalingsteken vergeten bent
- query's kan je makkelijker met de while-lus ipv de for-lus ophalen (zie alle tutorials)
Offline Martijn - 02/05/2008 12:52 (laatste wijziging 02/05/2008 12:57)
Avatar van Martijn Crew PHP de exact zelfde code, maar dan op de juiste manier ;)
  1. <?PHP
  2. $result=mysql_query("SELECT * FROM table1 WHERE id=1");
  3. while($rij=mysql_fetch_row($result))
  4. {
  5. echo $rij[9];
  6. }
  7.  
  8. $result=mysql_query("SELECT * FROM table2 ORDER BY id ASC");
  9. while($hoi=mysql_fetch_row($result))
  10. {
  11. echo $hoi[1].$hoi[2];
  12. }
  13. ?>


de echo die je had was zo:
echo "".$query."";
wat je met ". doet is zeggen 'stop met tekst, ga verder met query'. Maar er is geen tekst dis
echo $query; doet het ook 
in je query had je WHRE id='1', getallen hoeven geen single quotes 
en de for die je had, heeft een bestaand iets ervoor, de while, die doet exact hetzelfde als wat jij had gemaakt ;)
Ook, echo is met kleine letters niet echt veel verschil, maar dreamweaver bv herkent ECHO niet en echo wel
Een ander beste grote 'fout' is dat je in de 2e while je je fetch OOK $rij noemt. Niet doen, verzin er een andere naam voor 
als je de 1e keer er 10 records inzet, en de 2e keer maar 4 record, blijft ie die andere 6 wel onthouden
Offline juser100 - 02/05/2008 12:53
Avatar van juser100 MySQL interesse Ik ben d'r al uit, heb idd een scripteditor nodig met kleuren. Voorstellen zijn welkom.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.182s