login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Fout php (Opgelost)

Offline rredspike1 - 16/12/2008 00:28 (laatste wijziging 16/12/2008 01:31)
Avatar van rredspike1Lid Hoi,

Krijg een T_ELSE error:
Parse error: syntax error, unexpected T_ELSE in /inbox.php on line 40

code:
  1. <?php
  2. $sql1 = mysql_query("SELECT * FROM pmberichten WHERE user = '$id'");
  3. $res1 = mysql_query($sql1);
  4. ?>
  5. <form action="" method="post">
  6. <table class="inbox" cellpadding="0" cellspacing="0">
  7. <tr>
  8. <td colspan="6" align="center"><img src="plaatjes/inbox.png"> » Inbox <img src="plaatjes/nieuw.png"> » Nieuw Bericht <img src="plaatjes/verzonden.png"> » Verzonden Berichten</td>
  9. </tr>
  10. <tr>
  11. <td colspan="6"><h2><b>Inbox - Prive Berichten</b></h2></td>
  12. </tr>
  13. <tr>
  14. <td height="10px"></td>
  15. </tr>
  16. <tr>
  17. <td width="25px"><b>Nr</b></td>
  18. <td width="125px"><b>Verzender</b></td>
  19. <td width="125px"><b>Onderwerp</b></td>
  20. <td width="50px"><b>Datum</b></td>
  21. <td width="50px"><b>Tijd</b></td>
  22. <td width="75px"><b>Optie</b></td>
  23. </tr>
  24. <?
  25. if (mysql_num_rows($res1) >= 1){
  26. //-- er is een resultaat gevonden, toon de resultaten via een while () loop
  27. while ($obj1 = mysql_fetch_array($res1))
  28. {
  29. print '<tr>';
  30. print '<td>'.$obj1['id'].'</td>';
  31. print '<td>'.$obj1['verzender'].'</td>';
  32. print '<td>'.$obj1['onderwerp'].'</td>';
  33. print '<td>'.$obj1['datum'].'</td>';
  34. print '<td>'.$obj1['tijd'].'</td>';
  35. print '<td>'.$obj1['gelezen'].'</td>';
  36. print '<td></td>';
  37. print '</tr>';
  38. }
  39. print '</table>';
  40. else {
  41. print '<table class="inbox" cellpadding="0" cellspacing="0">';
  42. print '<tr>';
  43. print '<td>Er zijn geen nieuwe berichten</td>';
  44. print '</tr>';
  45. print '</table>';
  46. }
  47.  
  48. ?>


13 antwoorden

Gesponsorde links
Offline Pellens - 16/12/2008 02:28 (laatste wijziging 16/12/2008 02:28)
Avatar van Pellens PHP interesse
  1. <?php
  2. $sql1 = mysql_query("SELECT * FROM pmberichten WHERE user = '$id'");
  3. $res1 = mysql_query($sql1);
  4. ?>
  5. <form action="" method="post">
  6. <table class="inbox" cellpadding="0" cellspacing="0">
  7. <tr>
  8. <td colspan="6" align="center"><img src="plaatjes/inbox.png"> » Inbox <img src="plaatjes/nieuw.png"> » Nieuw Bericht <img src="plaatjes/verzonden.png"> » Verzonden Berichten</td>
  9. </tr>
  10. <tr>
  11. <td colspan="6"><h2><b>Inbox - Prive Berichten</b></h2></td>
  12. </tr>
  13. <tr>
  14. <td height="10px"></td>
  15. </tr>
  16. <tr>
  17. <td width="25px"><b>Nr</b></td>
  18. <td width="125px"><b>Verzender</b></td>
  19. <td width="125px"><b>Onderwerp</b></td>
  20. <td width="50px"><b>Datum</b></td>
  21. <td width="50px"><b>Tijd</b></td>
  22. <td width="75px"><b>Optie</b></td>
  23. </tr>
  24. <?
  25. if (mysql_num_rows($res1) >= 1){
  26. //-- er is een resultaat gevonden, toon de resultaten via een while () loop
  27. while ($obj1 = mysql_fetch_array($res1))
  28. {
  29. print '<tr>';
  30. print '<td>'.$obj1['id'].'</td>';
  31. print '<td>'.$obj1['verzender'].'</td>';
  32. print '<td>'.$obj1['onderwerp'].'</td>';
  33. print '<td>'.$obj1['datum'].'</td>';
  34. print '<td>'.$obj1['tijd'].'</td>';
  35. print '<td>'.$obj1['gelezen'].'</td>';
  36. print '<td></td>';
  37. print '</tr>';
  38. }}
  39. print '</table>';
  40. else {
  41. print '<table class="inbox" cellpadding="0" cellspacing="0">';
  42. print '<tr>';
  43. print '<td>Er zijn geen nieuwe berichten</td>';
  44. print '</tr>';
  45. print '</table>';
  46. }
  47.  
  48. ?>


Je hebt een } vergeten achter je while, dat zal wel de fout zijn...  
Offline rredspike1 - 16/12/2008 03:37
Avatar van rredspike1 Lid Nog steeds T_ELSE error
Offline zointer - 16/12/2008 05:32 (laatste wijziging 16/12/2008 05:39)
Avatar van zointer HTML gevorderde Jij hebt volgende;
  1. }
  2. }
  3. print '</table>';/*Je zet het tussen } en else dat kan niet*/
  4. else{
  5. print '<table class="inbox" cellpadding="0" cellspacing="0">';

Dat moet zo zijn;
  1. }
  2. print '</table>';/*Voor het afsluiten van if en achter sluiten van while*/
  3. }
  4. else{
  5. print '<table class="inbox" cellpadding="0" cellspacing="0">';

Dan is het nog fout, je opent table maar sluit deze niet enkel als er een actie is gedaan Het sluiten van de table moet op het laatste staan buiten de if else
  1. <?php
  2. $sql1 = mysql_query("SELECT * FROM pmberichten WHERE user = '$id'");
  3. $res1 = mysql_query($sql1);
  4. ?>
  5. <form action="" method="post">
  6. <table class="inbox" cellpadding="0" cellspacing="0">
  7. <tr>
  8. <td colspan="6" align="center"><img src="plaatjes/inbox.png"> » Inbox <img src="plaatjes/nieuw.png"> » Nieuw Bericht <img src="plaatjes/verzonden.png"> » Verzonden Berichten</td>
  9. </tr>
  10. <tr>
  11. <td colspan="6"><h2><b>Inbox - Prive Berichten</b></h2></td>
  12. </tr>
  13. <tr>
  14. <td height="10px"></td>
  15. </tr>
  16. <tr>
  17. <td width="25px"><b>Nr</b></td>
  18. <td width="125px"><b>Verzender</b></td>
  19. <td width="125px"><b>Onderwerp</b></td>
  20. <td width="50px"><b>Datum</b></td>
  21. <td width="50px"><b>Tijd</b></td>
  22. <td width="75px"><b>Optie</b></td>
  23. </tr>
  24. <?
  25. if (mysql_num_rows($res1) >= 1){
  26. //-- er is een resultaat gevonden, toon de resultaten via een while () loop
  27. while ($obj1 = mysql_fetch_array($res1))
  28. {
  29. print '<tr>';
  30. print '<td>'.$obj1['id'].'</td>';
  31. print '<td>'.$obj1['verzender'].'</td>';
  32. print '<td>'.$obj1['onderwerp'].'</td>';
  33. print '<td>'.$obj1['datum'].'</td>';
  34. print '<td>'.$obj1['tijd'].'</td>';
  35. print '<td>'.$obj1['gelezen'].'</td>';
  36. print '<td></td>';
  37. print '</tr>';
  38.  
  39. }
  40. }
  41. else{
  42. print '<table class="inbox" cellpadding="0" cellspacing="0">';
  43. print '<tr>';
  44. print '<td>Er zijn geen nieuwe berichten</td>';
  45. print '</tr>';
  46. print '</table>';
  47. }
  48. ?>
  49. </table><!--hier moet deze staan-->
Offline rredspike1 - 16/12/2008 13:06 (laatste wijziging 16/12/2008 13:11)
Avatar van rredspike1 Lid Nu krijg ik deze fout:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /inbox.php on line 29

  1. <?php
  2. <?php
  3. $sql1 = mysql_query("SELECT * FROM pmberichten");
  4. $res1 = mysql_query($sql1);
  5. ?>
  6. <form action="" method="post">
  7. <table class="inbox" cellpadding="0" cellspacing="0">
  8. <tr>
  9. <td><h1><b>Postvak</b></h1></td>
  10. </tr>
  11. </table>
  12. <table class="inbox" cellpadding="0" cellspacing="0">
  13. <tr>
  14. <td colspan="6" align="center"><img src="plaatjes/inbox.png"> <b>Inbox</b> <img src="plaatjes/nieuw.png"> Nieuw Bericht <img src="plaatjes/verzonden.png"> Verzonden Berichten</td>
  15. </tr>
  16. </table>
  17. <table class="inbox" cellpadding="0" cellspacing="0">
  18. <tr>
  19. <td class="spacer"></td>
  20. </tr>
  21. <tr>
  22. <td class="inbox_title" width="25px"><b>Nr</b></td>
  23. <td class="inbox_title" width="125px"><b>Verzender</b></td>
  24. <td class="inbox_title" width="125px"><b>Onderwerp</b></td>
  25. <td class="inbox_title" width="50px"><b>Datum</b></td>
  26. <td class="inbox_title" width="50px"><b>Tijd</b></td>
  27. <td class="inbox_title" width="75px"><b>Optie</b></td>
  28. </tr>
  29. <?
  30. if (mysql_num_rows($res1) >= 1){
  31. //-- er is een resultaat gevonden, toon de resultaten via een while () loop
  32. while ($obj1 = mysql_fetch_array($res1))
  33. {
  34. print '<tr>';
  35. print '<td class="content">'.$obj1['id'].'</td>';
  36. print '<td class="content">'.$obj1['verzender'].'</td>';
  37. print '<td class="content">'.$obj1['onderwerp'].'</td>';
  38. print '<td class="content">'.$obj1['datum'].'</td>';
  39. print '<td class="content">'.$obj1['tijd'].'</td>';
  40. print '<td class="content">'.$obj1['gelezen'].'</td>';
  41. print '<td class="content"></td>';
  42. print '</tr>';
  43. }
  44. } else {
  45. print '<tr>';
  46. print '<td class="content" colspan="7">Er zijn geen nieuwe berichten</td>';
  47. print '</tr>';
  48. }
  49. ?>
  50. </table>
Offline Ontani - 16/12/2008 13:18
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
waarom werk je 2x met mysql_query(..);?

die $res1 heb je toch niet nodig.

doe eens boven aan $rest1 = $sql1 ipv $rest1 = mysql_query($sql1);
Offline Aar - 16/12/2008 17:19
Avatar van Aar PHP interesse En een goede errorafhandeling met mysql_error() kan ook geen kwaad ;)
(wel zonder die 'die()' manier dan )
Offline BigBug - 16/12/2008 18:59
Avatar van BigBug PHP expert Er stonden nogal wat foutjes in. Ik het het script grotendeels herschreven. Zo zou het moeten werken. Probeer trouwens in het vervolg het grootste deel van je HTML buiten PHP te halen in verband met de parsetime!

  1. <?php
  2. if($sql1 = mysql_query("SELECT * FROM pmberichten"))
  3. {
  4. ?>
  5. <form action="" method="post">
  6. <table class="inbox" cellpadding="0" cellspacing="0">
  7. <tr>
  8. <td><h1><b>Postvak</b></h1></td>
  9. </tr>
  10. </table>
  11. <table class="inbox" cellpadding="0" cellspacing="0">
  12. <tr>
  13. <td colspan="6" align="center"><img src="plaatjes/inbox.png"> <b>Inbox</b> <img src="plaatjes/nieuw.png"> Nieuw Bericht <img src="plaatjes/verzonden.png"> Verzonden Berichten</td>
  14. </tr>
  15. </table>
  16. <table class="inbox" cellpadding="0" cellspacing="0">
  17. <tr>
  18. <td class="spacer"></td>
  19. </tr>
  20. <tr>
  21. <td class="inbox_title" width="25px"><b>Nr</b></td>
  22. <td class="inbox_title" width="125px"><b>Verzender</b></td>
  23. <td class="inbox_title" width="125px"><b>Onderwerp</b></td>
  24. <td class="inbox_title" width="50px"><b>Datum</b></td>
  25. <td class="inbox_title" width="50px"><b>Tijd</b></td>
  26. <td class="inbox_title" width="75px"><b>Optie</b></td>
  27. </tr>
  28. <?
  29. if (mysql_num_rows($res1) >= 1)
  30. {
  31. //-- er is een resultaat gevonden, toon de resultaten via een while () loop
  32. while ($obj1 = mysql_fetch_array($res1))
  33. {
  34. echo "<tr>
  35. <td class="content">".$obj1['id']."</td>
  36. <td class="content">".$obj1['verzender']."</td>
  37. <td class="content">".$obj1['onderwerp']."</td>
  38. <td class="content">".$obj1['datum']."</td>
  39. <td class="content">".$obj1['tijd']."</td>
  40. <td class="content">".$obj1['gelezen']."</td>
  41. <td class="content"></td>
  42. </tr>";
  43. }
  44. }
  45. else
  46. {
  47. ?>
  48. <tr>
  49. <td class="content" colspan="7">Er zijn geen nieuwe berichten</td>
  50. </tr>
  51. <?php
  52. }
  53. }
  54. else
  55. {
  56. echo 'Er is een fout opgetreden bij het ophalen van gegevens uit de database!';
  57. }
  58. ?>
  59. </table>
Offline rredspike1 - 16/12/2008 20:07
Avatar van rredspike1 Lid krijg:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/beachtyc/public_html/development/modules/1.ingelogt/inbox.php on line 35
Offline zointer - 16/12/2008 20:14
Avatar van zointer HTML gevorderde er wordt bij de echo met dubbele quote en je moet het met enkel quote werken 
Dus zo;
  1. echo '<tr>
  2. <td class="content">'.$obj1['id'].'</td>
  3. <td class="content">'.$obj1['verzender'].'</td>
  4. <td class="content">'.$obj1['onderwerp'].'</td>
  5. <td class="content">'.$obj1['datum'].'</td>
  6. <td class="content">'.$obj1['tijd'].'</td>
  7. <td class="content">'.$obj1['gelezen'].'</td>
  8. <td class="content"></td>
  9. </tr>';
Offline rredspike1 - 16/12/2008 20:22 (laatste wijziging 16/12/2008 20:23)
Avatar van rredspike1 Lid Dank je wel het werkt, alleen nu krijg ik als uitkomst het getal 4

Alleen niet de desbetreffende gegevens, dus zegmaar:
ID--VERZENDER--ONDERWERP--DATUM----TIJD---GELEZEN
1---ADMIN-------WELKOM---12-12-2008--20:20--

Wat te doen?
Offline bas1995 - 16/12/2008 21:54
Avatar van bas1995 Onbekend waar moet het getal 4 uitkomen en waar moet dat dan staan
Offline rredspike1 - 16/12/2008 23:19
Avatar van rredspike1 Lid Heb het al voor elkaar! bedankt allemaal
Offline Vitrix - 18/12/2008 14:01 (laatste wijziging 18/12/2008 14:02)
Avatar van Vitrix Nieuw lid Voor degene die het willen weten

De } else { was fout geschreven tussen de } en else { stond een stuk tekst die daar niet hoorden te staan.
Als ik het goed heb  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.266s