login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Database ophalen HTTP-fout 500

Offline Knbr - 13/01/2009 18:43 (laatste wijziging 13/01/2009 22:25)
Avatar van KnbrNieuw lid Ik heb iets gemaakt om gegevens uit een database te halen, maar hij kan de pagina niet weergeven 

ziet iemand de fout?

Plaatscode: 68828

16 antwoorden

Gesponsorde links
Offline Martijn - 13/01/2009 18:45
Avatar van Martijn Crew PHP de if zet html BOVEN je <html> en <body> Dat is dus al fout. Dat stukje moet je lager plaatsen
Offline anton - 13/01/2009 18:47
Avatar van anton Lid het is :
  1. $db = mysql_connect("localhost","theawfulls","********");
  2. mysql_select_db("theawfulls",$db);

dus mysql_select_db("je tabel",je database);
snappie??

GrTz
Offline Wim - 13/01/2009 18:48 (laatste wijziging 13/01/2009 18:52)
Avatar van Wim Crew algemeen copy & paste de error eens. Dit lijkt eerder op een webserver die plat ligt?

//edit:
@ anton; dat moet niet...

Met mysql_connect maak je trouwens een resource aan, deze kan je als parameter ($db in uw geval) meegeven met je mysql_select_db en met mysql_query. Dit zodat je met meerdere connecties kan werken. De manier die de TS gebruikt is echter ook correct!

Trouwens:
Table: een "tabel" met veldnamen en records (waardes) in
Database: een verzameling van verschillende tabellen

@TS:
Op lijn 100 controleer je $aBerichten en je kent deze pas een waarde toe op lijn 103 (binnen de if-lus!). Hier zal je script nooit komen, gezien $aBerichten altijd "false" zal zijn, en dus verschillend van "2005"
Offline anton - 13/01/2009 18:53
Avatar van anton Lid oh , dat van die mysql wist ik dus niet , ik leer mezelf al de talen uit boeken enzo en in elk boek doen ze het op die manier , dus ik dacht dat dat de fout was xD handig om te weten xD
ThX
Offline Martijn - 13/01/2009 18:54
Avatar van Martijn Crew PHP
Citaat:
Resolving 500 errors - general

This error can only be resolved by fixes to the Web server software. It is not a client-side problem. It is up to the operators of your Web server site to locate and analyse the logs which should give further information about the error.
Offline anton - 13/01/2009 18:57
Avatar van anton Lid het ligt dus aan je webserver...
Offline Koen - 13/01/2009 19:04
Avatar van Koen PHP expert
anton schreef:
het ligt dus aan je webserver...


Heb je dat helemaal zelf bedacht?


Heb je laatst iets gedaan met htaccess?
Offline anton - 13/01/2009 19:50
Avatar van anton Lid xD sorry dat ik het sneller wist dan jij hoor  
Offline Knbr - 14/01/2009 13:19 (laatste wijziging 14/01/2009 13:21)
Avatar van Knbr Nieuw lid Ligt niet aan de webserver, ik denk dat dit het probleem is:

wimmarien schreef:
@TS:
Op lijn 100 controleer je $aBerichten en je kent deze pas een waarde toe op lijn 103 (binnen de if-lus!). Hier zal je script nooit komen, gezien $aBerichten altijd "false" zal zijn, en dus verschillend van "2005"


Ik moet het dus

  1. $aBerichten = mysql_fetch_array($qSelect_berichten)


voor

  1. if($aBerichten['jaar']==2005)
  2. {
  3. echo '<p class="tussenkop">2005</p><br /><br />';
  4. while($aBerichten = mysql_fetch_array($qSelect_berichten))
  5. {
  6. $maand_vh_jaar = $aBerichten['maand'];
  7. $maand = $maanden[$maand_vh_jaar];
  8. echo '<p class="agendageweest">'.$aBerichten['dag'].' '.$maand.' '.$aBerichten['jaar']': '.$aBerichten['horeca'].' '.$aBerichten['plaats'].' '.$aBerichten['soort'].' van: '.$aBerichten['vanuur'].'.'.$aBerichten['vanmin'].' tot: '.$aBerichten['totuur'].'.'.$aBerichten['totmin'].' <i>'.$aBerichten['totmin'].'</i>';
  9. }
  10. echo '<br /><br /><br />';
  11. }


zetten maar wat moet ik dan in de while zetten?
en mag ik dit zo doen:

  1. if($aBerichten['jaar']==2005)


of moet 2005 tussen""?
Offline Wim - 14/01/2009 13:23
Avatar van Wim Crew algemeen Nee...

ik ken je hele code niet, maar volgens mij kan je beter "WHERE jaar='2005'" bij in je query zetten zodat die check overbodig is

Deze code is niet fout in de zin van dat ze een error geeft, het is gewoon een denk-foutje ($aBerichten['jaar'] zal ALTIJD false zijn in die if-lus)
Offline Knbr - 14/01/2009 13:29 (laatste wijziging 14/01/2009 14:12)
Avatar van Knbr Nieuw lid Ik heb het nu zo:
Ik heb hem iets vereenvoudigd

  1. <?php
  2. mysql_connect("localhost", "theawfuls_nl", "*******");
  3. mysql_select_db("theawfuls_nl");
  4.  
  5. if(mysql_result(mysql_query("SELECT COUNT(ID) FROM `agendapunten`"),0) == 0)
  6. {
  7. echo 'Er staan nog geen berichten in de database';
  8. }
  9. else
  10. {
  11. ?>
  12.  
  13. //Html dingen
  14.  
  15. <?php
  16. $maanden = array('januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december');
  17. $qSelect_berichten = mysql_query('SELECT * FROM agendapunten WHERE jaar='2005' ORDER BY jaar DESC, maand DESC, dag DESC, ID DESC') or die (mysql_error());
  18. echo '<p class="tussenkop">2005</p><br /><br />';
  19. while($aBerichten = mysql_fetch_array($qSelect_berichten))
  20. {
  21. $maand = $maanden[$aBerichten['maand']];
  22. echo '<p class="agendageweest">'.$aBerichten['dag'].' '.$maand.' '.$aBerichten['jaar']' '.$aBerichten['plaats'].': '.$aBerichten['info'].'.';
  23. }
  24. echo '<br /><br /><br />';
  25. }
  26. ?>


Maar hij geeft nog steeds programeer fout: LINK
Offline Flex1986 - 14/01/2009 14:12 (laatste wijziging 14/01/2009 14:18)
Avatar van Flex1986 Gouden medaille

Senior Member
Hij geeft totaal geen uitvoer er gaat dus iets mis in de bovenste regels. Doe eens boven aan COUNT(*) inplaats van ID. In sommige dbmsen is ID namelijk een preserved word en moet je dus tussen ``. Maar als je alles wil tellen kan je net zo goed * gebruiken.

Verder begint een array bij de waarde 0 en januari is heeft als aanduiding 1. Wil je dat de maanden goed werken dan moet je het volgende doen.

  1. $maand = $maanden[$aBerichten['maand'] - 1];


Aangepast code:

  1. <?php
  2. mysql_connect("localhost", "theawfuls_nl", "*******");
  3. mysql_select_db("theawfuls_nl");
  4.  
  5. $result = mysql_query("SELECT COUNT(*) FROM `agendapunten`") or die (mysql_error());
  6.  
  7. if(mysql_result($result,0) == 0)
  8. {
  9. echo 'Er staan nog geen berichten in de database';
  10. }
  11. else
  12. {
  13. ?>
  14.  
  15. //Html dingen
  16.  
  17. <?php
  18. $maanden = array('januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december');
  19. $qSelect_berichten = mysql_query('SELECT * FROM agendapunten WHERE jaar='2005' ORDER BY jaar DESC, maand DESC, dag DESC, ID DESC') or die (mysql_error());
  20. echo '<p class="tussenkop">2005</p><br /><br />';
  21. while($aBerichten = mysql_fetch_array($qSelect_berichten))
  22. {
  23. $maand = $maanden[$aBerichten['maand'] - 1];
  24. echo '<p class="agendageweest">'.$aBerichten['dag'].' '.$maand.' '.$aBerichten['jaar']' '.$aBerichten['plaats'].': '.$aBerichten['info'].'.';
  25. }
  26. echo '<br /><br /><br />';
  27. }
  28. ?>
Offline Knbr - 14/01/2009 14:19
Avatar van Knbr Nieuw lid Ik heb het aangepast maar hij doet het nog steeds niet :S ik snap het niet doe ik soms onmogelijke dingen ofz heb ik een tekentje vergeten?
Offline Flex1986 - 14/01/2009 14:21
Avatar van Flex1986 Gouden medaille

Senior Member
Gooi deze even boven aan je script. Misschien geeft die duidelijkheid.

Offline Wim - 14/01/2009 14:28
Avatar van Wim Crew algemeen jaar='', die ' moet je escapen!!

  1. $qSelect_berichten = mysql_query('SELECT * FROM agendapunten ORDER BY jaar DESC, maand DESC, dag DESC, ID DESC WHERE jaar=\'2005\'') or die (mysql_error());
Offline Knbr - 14/01/2009 16:22 (laatste wijziging 14/01/2009 16:30)
Avatar van Knbr Nieuw lid Hallo ik heb het opgelost ik ben gewoon opnieuw begonnen 

Hier is een link naar de pagina:LINK

Hier de code:
  1. verwijderd


Citaat:
Rens edit:
Lappen code horen hier niet thuis.
Die horen op http://www.plaatscode.be!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.385s