Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [php/mysql] error in een simpele forum :) (https://forum.scholieren.com/showthread.php?t=566152)

micra 13-08-2003 05:30

[php/mysql] error in een simpele forum :)
 
Ik ben voor de grap bezig met een forum, maar ik snap niet waarom hij een error geeft,
de error is:

Parse error: parse error in /home/micra/html/php/prut/index.php on line 100

Hier de script :P natuurlijk nog niet helemaal af(maar der zit dus iets fout in de if syntatix

PHP-code:

<? 
include"config.php"; 
$result = mysql_query("select * from forum"); 
while ($row = mysql_fetch_object($result)) { 
                          ?> 
            <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1" height="13"> 
  <tr> 
    <td width="16%" height="33"> 
    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber3"> 
      <tr> 
        <td width="100%"><?php echo $row->naam?></td> 
      </tr> 
      <tr> 
        <td width="100%"><?php echo $row->land?></td> 
      </tr> 
      <tr> 
        <td width="100%">&nbsp;</td> 
      </tr> 
    </table> 
    </td> 
    <td width="84%" height="32"> 
    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2" height="57"> 
      <tr> 
        <td width="100%" height="57"><?php echo $row->bericht?></td> 
      </tr> 
    </table> 
    </td> 
  </tr> 
</table> 
<?php 

mysql_free_result($result); 
echo 
"<center><a href="index.php?actie=toevoegen">Toevoegen</a> - <a href="index.php?actie=verwijderen">Verwijderen</a></center>"


?> 


<? 


if($_GET[actie] == "toevoegen") 

 { 

  if($submit)  
      {  
          if($naam == "")  
             {  
              echo"je hebt geen naam in gevult <a href="index.php?actie=toevoegen">Klik hier</a> om terug tegaan"; 
             } 
            elseif($land == "") 
             { 
              echo"je hebt geen land ingevult <a href="index.php?actie=toevoegen">Klik hier</a> om terug tegaan"; 
             } 
            elseif($bericht == "") 
             {  
                echo"je hebt geen land ingevult <a href="index.php?actie=toevoegen">Klik hier</a> om terug tegaan"; 
             }     
          else 
             { 
              $query="INSERT INTO forum (naam, land, bericht) VALUES ('$naam', '$land', '$bericht')"; mysql_query($query) or die(mysql_error()); echo"<script language="javascript">window.location="index.php"</script>";  
       } 
} else { 

 ?> 

<form action="index.php?actie=toevoegen" method="post" name="form"> 
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber4" height="104"> 
  <tr> 
    <td width="50%" align="right" height="22">Naam:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </td> 
    <td width="50%" height="22"> <input type="text" name="naam" value="" size="20"></td> 
  </tr> 
  <tr> 
    <td width="50%" align="right" height="22">Land:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td> 
    <td width="50%" height="22"> <input type="text" name="land" value="" size="20"></td> 
  </tr> 
  <tr> 
    <td width="50%" align="right" height="7">Bericht:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td> 
    <td width="50%" rowspan="2" height="41"> <textarea name="bericht" rows="4" cols="20"></textarea></td> 
  </tr> 
  <tr> 
    <td width="50%" align="right" height="34">&nbsp;</td> 
  </tr> 
  <tr> 
    <td width="50%" height="19"><p align="right"><button type="submit" name="submit" >verstuur</button></p></td> 
    <td width="50%" height="19"><p align="left"><button type="reset" name="reset">legen</button></p></td> 
  </tr> 
</table> 


</form> 
<?php 
} } 
if(
$_GET[actie] == "verwijderen"){ 

 if(
$submit->name == jah) { 
     
$query1 "delete * from forum where id='" $row->id " '"  or die(mysql_error()); 
     
mysql_query($query1
     echo
"<center>Bericht is verwijderd</center>"
   } 
  else 
     {  
     echo 
"Bericht kon niet worden verwijderd"
   } 
    }  
    <
form action="index.php?actie=verwijderen" method="post"
<
button type="submit" name="jah" value="jah">Jah</button
<
button type="submit" name="nee" value="nee">Nee</button
</
form
?>


Koen 13-08-2003 06:55

Het zou fijn zijn als je er even bij vermeld welke line nou line 100 is. ;)

eddie 13-08-2003 08:16

Je onderste php code is niet goed. Bepaalde regels worden niet ge-echo-ed, en sommige worden niet afgesloten met ;

micra 13-08-2003 09:23

deze is 100

PHP-code:

     echo"<center>Bericht is verwijderd</center>"


micra 13-08-2003 09:42

Voor deathz0rz

PHP-code:

<?
include"config.php";
$result = mysql_query("select * from forum");
while ($row = mysql_fetch_object($result)) {
                          ?>
            <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1" height="13">
  <tr>
    <td width="16%" height="33">
    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber3">
      <tr>
        <td width="100%"><?php echo $row->naam?></td>
      </tr>
      <tr>
        <td width="100%"><?php echo $row->land?></td>
      </tr>
      <tr>
        <td width="100%">&nbsp;</td>
      </tr>
    </table>
    </td>
    <td width="84%" height="32">
    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2" height="57">
      <tr>
        <td width="100%" height="57"><?php echo $row->bericht?></td>
      </tr>
    </table>
    </td>
  </tr>
</table>
<?php
}
mysql_free_result($result);
echo 
"<center><a href=\"index.php?actie=toevoegen\">Toevoegen</a> - <a href=\"index.php?actie=verwijderen\">Verwijderen</a></center>";


?>


<?


if($_GET[actie] == "toevoegen")

 {

  if($submit) 
      { 
          if($naam == "") 
             { 
              echo"je hebt geen naam in gevult <a href=\"index.php?actie=toevoegen\">Klik hier</a> om terug tegaan";
             }
            elseif($land == "")
             {
              echo"je hebt geen land ingevult <a href=\"index.php?actie=toevoegen\">Klik hier</a> om terug tegaan";
             }
            elseif($bericht == "")
             { 
                echo"je hebt geen land ingevult <a href=\"index.php?actie=toevoegen\">Klik hier</a> om terug tegaan";
             }     
           else
             {
              $query="INSERT INTO forum (naam, land, bericht) VALUES ('$naam', '$land', '$bericht')"; mysql_query($query) or die(mysql_error()); echo"<script language=\"javascript\">window.location=\"index.php\"</script>"; 
       }
} else {

 ?>

<form action="index.php?actie=toevoegen" method="post" name="form">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber4" height="104">
  <tr>
    <td width="50%" align="right" height="22">Naam:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </td>
    <td width="50%" height="22"> <input type="text" name="naam" value="" size="20"></td>
  </tr>
  <tr>
    <td width="50%" align="right" height="22">Land:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
    <td width="50%" height="22"> <input type="text" name="land" value="" size="20"></td>
  </tr>
  <tr>
    <td width="50%" align="right" height="7">Bericht:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
    <td width="50%" rowspan="2" height="41"> <textarea name="bericht" rows="4" cols="20"></textarea></td>
  </tr>
  <tr>
    <td width="50%" align="right" height="34">&nbsp;</td>
  </tr>
  <tr>
    <td width="50%" height="19"><p align="right"><button type="submit" name="submit" >verstuur</button></p></td>
    <td width="50%" height="19"><p align="left"><button type="reset" name="reset">legen</button></p></td>
  </tr>
</table>


</form>
<?php
} }
if(
$_GET[actie] == "verwijderen"){
 
 if(
$submit->name == jah) {
     
$query1 "delete * from forum where id='" $row->id " '"  or die(mysql_error());
     
mysql_query($query1);
     echo
"<center>Bericht is verwijderd</center>";
   }
  elseif
     { 
     echo 
"Bericht kon niet worden verwijderd";
   }else{
     
?>
    <form action="index.php?actie=verwijderen" method="post">
<button type="submit" name="jah" value="jah">Jah</button>
<button type="submit" name="nee" value="nee">Nee</button>
</form>

<?
}
?>


belgo 13-08-2003 10:32

Er zitten wel meer foutjes in die onverwachte resultaten zullen leveren. Zo gebruik je bij strings vrijwel geen quotes.

Bijv:
Code:

if($_GET[actie] == "toevoegen")
moet worden
Code:

if($_GET['actie'] == "toevoegen")

De regel waar de fout zelf in zit:
Code:

echo"je hebt geen naam in gevult <a href=\"index.php?actie=toevoegen\">Klik hier</a> om terug tegaan";
daar mist een spatie tussen het commando 'echo' en haar 'parameters'.
Code:

echo "je hebt geen naam in gevult <a href=\"index.php?actie=toevoegen\">Klik hier</a> om terug tegaan";
Misschien dat dit helpt?

Fade of Light 13-08-2003 11:31

Citaat:

belgo schreef op 13-08-2003 @ 11:32:
daar mist een spatie tussen het commando 'echo' en haar 'parameters'.

naar mijn weten levert dat geen fout op.

btw dit vinnik wel erg krom eruit zien:

Code:

$query1 = "delete * from forum where id='" . $row->id . " '"  or die(mysql_error());
wrom neit gewoon:

Code:

$query1 = "delete * from forum where id='$row->id'"  or die(mysql_error());

en daarbij moet je volgens mij in combinatie met "or die" wel even mysql_query ervoor zetten.

Harrie 13-08-2003 11:46

echo"blaat"; zonder spatie kan gewoon..


-----------------
$query1 = "delete * from forum where id='$row->id'" or die(mysql_error());
---------------------

:confused: :confused:
hoe kom je hier bij?
het is toch echt.. $query1 = "delete * from forum where id='$row->id'";
en daarna pas mysql_query($query1) or die (mysql_error());


die code van je staat vol fouten micra

micra 13-08-2003 12:28

I know, maar ik wou even proberen hoe het ging met die _get codes,

En de meeste fouten heb ik der al uit hoor :)
maar dat kwam ook door mijn vlug heid :P

en bedankt voor al jullie verbeteringen.

jullie horen nog van mij,

btw:
Harrie,
Jij doet de query ook fout,
het moet zijn:
delete form forum where id="$row->id"

Harrie 13-08-2003 12:32

Citaat:

micra schreef op 13-08-2003 @ 13:28:

btw:
Harrie,
Jij doet de query ook fout,
het moet zijn:
delete form forum where id="$row->id"

owja klopt..
maar ik keek/doelde alleen naar/op die mysql_error()

micra 13-08-2003 15:29

Citaat:

Harrie schreef op 13-08-2003 @ 13:32:
owja klopt..
maar ik keek/doelde alleen naar/op die mysql_error()

:P
Maar ik moet echt iets vinden om tekunnen verwijderen :S

weet iemand toevallig een systeempje?
wat wel slaat op:
index.php?actie=verwijderen&id=

heb je iets, of weet je hoe ik het moet doen,
zeg het please even

Fade of Light 13-08-2003 15:33

Citaat:

micra schreef op 13-08-2003 @ 16:29:
weet iemand toevallig een systeempje?
wat wel slaat op:
index.php?actie=verwijderen&id=

wat als ik, als misbruiker van jouw site, dit doe:
index.php?actie=verwijderen$id=1
en
index.php?actie=verwijderen$id=2
en
etc

dan ben je ze dus allemaal kwijt. Niet zo slim lijkt me.

micra 13-08-2003 20:26

Citaat:

Fade of Light schreef op 13-08-2003 @ 16:33:
wat als ik, als misbruiker van jouw site, dit doe:
index.php?actie=verwijderen$id=1
en
index.php?actie=verwijderen$id=2
en
etc

dan ben je ze dus allemaal kwijt. Niet zo slim lijkt me.

Gebruik je mijn site :S
Zo goed is hij toch niet :) btw: het is een zogenaamde forum :)

Maar hoe doe je dat met code?
En hoezo ben ik het dan kwijt,
als ik dat doe dat hij het verwijderd vanaf de id
dus alles van id 1
dan delete hij alles van id 1 toch?

Megadeth 14-08-2003 09:38

@ Fade of Light :

moet jij eens zien wat netter lijkt in een editor :

http://breezer.dyndns.org/php.jpg

Dan toch met die '".$var."' hoor.. :)

Fade of Light 14-08-2003 12:54

Citaat:

Megadeth schreef op 14-08-2003 @ 10:38:
@ Fade of Light :

moet jij eens zien wat netter lijkt in een editor :

[afbeelding]

Dan toch met die '".$var."' hoor.. :)

je vergeet sowieso de ] aan het einde van $_GET['id] in de 2de query. Maar het maakt me niet zoveel uit welke kleurtjes jouw editor eraan geeft, persoonlijk vind ik het netter als je niet zo moeilijk doet en die var er gewoon inragt. MAra dat zal wel een individuele keuze zijn.

micra: Nee ik ben geengebruiker van je site, maar stel dat ik dat wel was en dan dat zou doen. dan (ligt er natuurlijk aan wat je code precies is) zou alles met id =1 verwijdert kunnen worden. Oftewel, misbruik is mogelijk. (volgens mij! ik ben geen die hard php guru)

Megadeth 14-08-2003 13:13

Citaat:

Fade of Light schreef op 14-08-2003 @ 13:54:
je vergeet sowieso de ] aan het einde van $_GET['id] in de 2de query. Maar het maakt me niet zoveel uit welke kleurtjes jouw editor eraan geeft, persoonlijk vind ik het netter als je niet zo moeilijk doet en die var er gewoon inragt. MAra dat zal wel een individuele keuze zijn.

Had het ff snel getypt normaal gesproken doe ik het wel [' '] uiteraard..

Maar goed elke scripter heeft z'n eigen voorkeur en stijl om te scripten :)

micra 14-08-2003 13:49

Citaat:

Megadeth schreef op 14-08-2003 @ 14:13:
Had het ff snel getypt normaal gesproken doe ik het wel [' '] uiteraard..

Maar goed elke scripter heeft z'n eigen voorkeur en stijl om te scripten :)

Daar heb je 100% gelijk in, als ze dat niet deden was der ook geen zak aan :P


Alle tijden zijn GMT +1. Het is nu 17:05.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.