Toon posts:

"PHP form" Wat die ik hier fout?

Pagina: 1
Acties:

Verwijderd

Topicstarter
<Wat doe ik hier fout?, ik krij namelijk een parse error op line 11 dat is de regel van $query="INSERT.......>

<?php
if ($submit){

mysql_connect ("XXXXX","XXXXX","XXXXX");

mysql_select_db("XXXXX");
  
   $query = "INSERT INTO nieuws (titel, bericht) VALUES ('$titel','$bericht')";

   mysql_query($query) or die ("query mislukt");

}else{

?>
<html>

<form action="cms.php" method="post">
<p>
<input type="hidden" name="submit" value="maakt_niet_uit">
<input type="text" name="titel" size=30 maxlength=120>
<br>
<br>
<textarea name="bericht" cols=30 rows=4></textarea>
<br>
<br>
<input type="submit" name="Submit" value="Voeg toe bericht toe">
<input type="reset" name="Submit2" value="Wis">
</p>
</form>
</html>

<?php
}
?>

Verwijderd

Op donderdag 17 januari 2002 14:13 schreef OneOvErWorKedPuPPy het volgende:
<Wat doe ik hier fout?, ik krij namelijk een parse error op line 11 dat is de regel van $query="INSERT.......>

<?php
if ($submit){

mysql_connect ("XXXXX","XXXXX","XXXXX");

mysql_select_db("XXXXX");
  
   $query = "INSERT INTO nieuws (titel, bericht) VALUES ('$titel','$bericht')";
De aanhalingtekens moet je escapen d.m.v. een backslash.

Verwijderd

dubbel post

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op donderdag 17 januari 2002 14:19 schreef RealGamer het volgende:
De aanhalingtekens moet je escapen d.m.v. een backslash.
nee :)

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
ik heb het geprobeerd, maar geen succes.:(

Verwijderd

Topicstarter
d2k wat moet ik dan doen?:?:?

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op donderdag 17 januari 2002 14:23 schreef OneOvErWorKedPuPPy het volgende:
ik heb het geprobeerd, maar geen succes.:(
hmmz je query is wel goed volgens mij (geen parse error iig)
code:
1
2
3
4
5
6
7
8
9
10
11
12
$query = "
    INSERT INTO nieuws 
        (
            titel, 
            bericht
        ) 
        VALUES 
        (
            '$titel',
            '$bericht'
        )
    ";

niet getest, alles uit de losse pols

Doet iets met Cloud (MS/IBM)


  • Prutser_IA
  • Registratie: Januari 2000
  • Laatst online: 03-06-2021

Prutser_IA

<*{{{><

Ik weet niet of dit je volledige code is ofdat er nog iets vooraf gaat, maar ik zie geen parse fouten..
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?
 
if (!empty($submit))
{ 
  mysql_connect("XXXXX","XXXXX","XXXXX"); 
  mysql_select_db("XXXXX"); 
   
  $query = "INSERT INTO nieuws (titel, bericht) VALUES ('$titel','$bericht')"; 
  mysql_query($query) or die ("query mislukt:". mysql_error()); 

}
else
{ 
?>

Kleine aanpassingen, geen fouten in mij ogen..

42


Verwijderd

kloppen je tabbelen en alles ??

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op donderdag 17 januari 2002 14:24 schreef OneOvErWorKedPuPPy het volgende:
d2k wat moet ik dan doen?:?:?
ik zie zo 1-2-3 geen parse error eik
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?
 
if ($submit)
{ 
    mysql_connect("XXXXX","XXXXX","XXXXX"); 
    mysql_select_db("XXXXX"); 
         $query = "INSERT INTO nieuws 
                     (
                         titel, 
                         bericht
                     ) 
                     VALUES 
                     (
                         '$titel',
                         '$bericht'
                     )
             "; 
       mysql_query($query) or die ("query mislukt"); 
}
else
{ 
?>
    <html>
    
    <form action="cms.php" method="post">
    <p> 
    <input type="hidden" name="submit" value="maakt_niet_uit">
    <input type="text" name="titel" size=30 maxlength=120>
    <br>
    <br>
    <textarea name="bericht" cols=30 rows=4></textarea>
    <br>
    <br>
    <input type="submit" name="Submit" value="Voeg toe bericht toe">
    <input type="reset" name="Submit2" value="Wis">
    </p>
    </form>
    </html>
<?php 
} 
?>

zit ie hier ook in?

Doet iets met Cloud (MS/IBM)


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op donderdag 17 januari 2002 14:26 schreef Sh4keM het volgende:
kloppen je tabbelen en alles ??
daar krijg je geen parse error op iig :)

Doet iets met Cloud (MS/IBM)


  • blackd
  • Registratie: Februari 2001
  • Niet online
Je moet mysql_query anders gebruiken:
PHP:
1
2
3
4
<?
$result = mysql_query("SELECT * WHERE 1=1")
    or die("Invalid query");
?>

dus zet er even een $result = voor de 'mysql_query'. Als deze true is, is je query gelukt.

Zo dus:
PHP:
1
2
3
4
5
<?
$query = "INSERT INTO nieuws (titel, bericht) VALUES ('$titel','$bericht')";
$result = mysql_query($query) or die ("query mislukt"); 
if ($result) { echo "Query gelukt"; }
?>

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op donderdag 17 januari 2002 14:40 schreef blackd het volgende:
mehhhhhh
allemaal leuk en aardig maar hij heeft een parse error :)
dat de query niet goed gaat zal allemaal wel :)
eeerst die parse error !!!
1 probleem tegelijk

Doet iets met Cloud (MS/IBM)


  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 14:42 schreef D2k het volgende:

[..]

allemaal leuk en aardig maar hij heeft een parse error :)
dat de query niet goed gaat zal allemaal wel :)
eeerst die parse error !!!
1 probleem tegelijk
dat lost je probleem op hoor.. je gebruikt de functie niet goed..
$query is allemaal prima, maar die mysql_query() wordt verkeerd gebruikt!

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • JoostBaksteen
  • Registratie: December 2000
  • Laatst online: 27-03 19:32
Zelf zou ik het ook niet zo weten, test script werkt hier local gewoon prima....

Probeer eens:
PHP:
1
2
3
4
5
6
<?
$titel = addslashes($titel);
$bericht = addslashes($bericht);

$query = "INSERT INTO nieuws (titel, bericht) VALUES ('$titel','$bericht')"; 
?>

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op donderdag 17 januari 2002 14:45 schreef blackd het volgende:

[..]

dat lost je probleem op hoor.. je gebruikt de functie niet goed..
$query is allemaal prima, maar die mysql_query() wordt verkeerd gebruikt!
nou wordt ik nieuwsgierig
jij mag mij gaan uitleggen waarom ik $result nodig heb
PHP:
1
2
3
4
5
6
<?
$result=mysql_query($query);
//is gewoon hetzelfde als
mysql_query($query);
//en dat scheelt al helemaal geen parse errors
?>

maar goed
leg het me maar eens uit dan ajb :)

Doet iets met Cloud (MS/IBM)


  • blackd
  • Registratie: Februari 2001
  • Niet online
http://www.php.net/manual/en/function.mysql-query.php
resource mysql_query (string query [, resource link_identifier])

Example 1. mysql_query()

<php
$result = mysql_query("SELECT * WHERE 1=1")
or die("Invalid query");
?>
volgens de manual...

ik zie bij de comments ook dat er gebruik wordt gemaakt van mysql_query ZONDER $result, maar dan staat er geen or die("invalid query") of iets dergelijks achter..

vandaar :)

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op donderdag 17 januari 2002 14:58 schreef blackd het volgende:
http://www.php.net/manual/en/function.mysql-query.php
[..]

volgens de manual...

ik zie bij de comments ook dat er gebruik wordt gemaakt van mysql_query ZONDER $result, maar dan staat er geen or die("invalid query") of iets dergelijks achter..

vandaar :)
dat het er niet staat maak het nog niet incorrect
een returnwaarde (dat is $result) afvangen is niet verplicht :)
dus is niet fout dus levert geen parse error op :) :Y)

Doet iets met Cloud (MS/IBM)


  • JoostBaksteen
  • Registratie: December 2000
  • Laatst online: 27-03 19:32
Op donderdag 17 januari 2002 15:00 schreef D2k het volgende:

[..]

dat het er niet staat maak het nog niet incorrect
een returnwaarde (dat is $result) afvangen is niet verplicht :)
dus is niet fout dus levert geen parse error op :) :Y)
Idd, je hoeft helemaal geen $result te maken. Probeer het eens zal ik zeggen.
PHP:
1
2
3
4
<?
$query = "INSERT INTO nieuws (titel, bericht) VALUES ('$titel','$bericht')"; 
mysql_query($query) or die ("query mislukt");
?>

Voer dit eens uit dan merk je wel dat dit werkt.

/edit de or die() dan hè

  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 15:00 schreef D2k het volgende:

[..]

dat het er niet staat maak het nog niet incorrect
een returnwaarde (dat is $result) afvangen is niet verplicht :)
dus is niet fout dus levert geen parse error op :) :Y)
* blackd 's gedachtengang:
in de manual staat dat er een result aan gebonden zit. In de comments staat het er niet. Het kan blijkbaar dus alletwee. Maar, in de comments staat er geen 'or die' gedoe achter. Moet dan:
1. or die("query fout") weg bij die mysql_query
2. er een $result voor

blijkbaar dus geen van beide...

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


Verwijderd

dus gewoon on-onderbouwd roepen dat er maar $result voor moet ;)

pup, post eens de exacte foutmelding?

  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 15:04 schreef jurriebur het volgende:
dus gewoon on-onderbouwd roepen dat er maar $result voor moet ;)
Ten eerste:
ik heb het zojuist onderbouwd...
ten tweede:
aangezien iedereen geen parse fouten zag, leek mij dat nog een mogelijkheid. 't valt altijd te proberen ;)

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • JoostBaksteen
  • Registratie: December 2000
  • Laatst online: 27-03 19:32
Op donderdag 17 januari 2002 15:03 schreef blackd het volgende:

[..]

* blackd 's gedachtengang:
in de manual staat dat er een result aan gebonden zit. In de comments staat het er niet. Het kan blijkbaar dus alletwee. Maar, in de comments staat er geen 'or die' gedoe achter. Moet dan:
1. or die("query fout") weg bij die mysql_query
2. er een $result voor

blijkbaar dus geen van beide...
Je mag het allemaal zelf kiezen.

Maar als je er $result voor zet dan krijg je de output van mysql_query in result (zoals D2K zei). Je kan dan dus makkelijker checken of je query goed is uitgevoerd. Dit is alleen niet verplicht.

Dus het maakt niet uit.

  • blackd
  • Registratie: Februari 2001
  • Niet online
Eh. losse opmerking
Wat gebeurt er met dat if($submit)?
Wordt dat misschien beinvloedt door dit:
<input type="hidden" name="submit" value="maakt_niet_uit">

moet dat 'maakt_niet_uit' niet 'true' zijn?

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

verander je query eens in dit
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
$query = "INSERT INTO nieuws 
        (    
            titel, 
            bericht
        ) 
        VALUES 
        (
            '".addslashes($titel)."',
            '".addslashes($bericht)."'
        )
    "; 
?>

wederom non tested
edit: zo dus denk ik (tnx RdeTuinman)

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
Mijn dank is groot. maar achteraf heb ik het niet nodig gehad ik heb een ander script gepakt en aagepast :'( en nu werkt het wel, maar in ieder geval bedankt.

  • JoostBaksteen
  • Registratie: December 2000
  • Laatst online: 27-03 19:32
Op donderdag 17 januari 2002 15:09 schreef D2k het volgende:
wederom non tested
edit: zo dus denk ik (tnx RdeTuinman)
RdeTuinman :? :P

if ($submit) kan je idd beinvloeden.

Zoals ik hier heb gedaan :P
http://www.webtrax.nl/pedopas/result.php?Naam=Joost%20Baksteen&Voorletters=JB&Submit=Verstuur&Dag=6&Maand=1&Jaar=1984&Leeftijd=10

Je kan zo dus makkelijk scripts voor de gek houden. Je moet daarom altijd doen if ($REQUEST_METHOD == 'POST'), nog mooier is om dat ook gelijk te kijken naar de referer, maar ja dat is wel veel werk extra.

  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 15:35 schreef joostbaksteen het volgende:

[..]

RdeTuinman :? :P

if ($submit) kan je idd beinvloeden.

Zoals ik hier heb gedaan :P

Je kan zo dus makkelijk scripts voor de gek houden. Je moet daarom altijd doen if ($REQUEST_METHOD == 'POST'), nog mooier is om dat ook gelijk te kijken naar de referer, maar ja dat is wel veel werk extra.
ik gebruik altijd <form method="Post"> zodat je de geposte variabelen niet ziet in de url.

Maar 't punt waarom ik 't eigenlijk zei: if($submit) checkt toch of $submit == true? In dit geval is $submit een string: $submit == "maakt_niet_uit". Dit klopt dan toch niet?
Of kijkt if($submit) ook of de $submit bestaat? Dat doe ik altijd met if(isset($submit)) namelijk.

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • corani
  • Registratie: December 2000
  • Laatst online: 05-10-2017

corani

__,,,_(^_^)_,,,__

Haha... Humor :D

Laat me nou toch eens met rust man!
Iedereen die in telekinese gelooft, steek a.u.b. mijn hand op


  • JoostBaksteen
  • Registratie: December 2000
  • Laatst online: 27-03 19:32
Op donderdag 17 januari 2002 15:42 schreef blackd het volgende:

[..]

ik gebruik altijd <form method="Post"> zodat je de geposte variabelen niet ziet in de url.

Maar 't punt waarom ik 't eigenlijk zei: if($submit) checkt toch of $submit == true? In dit geval is $submit een string: $submit == "maakt_niet_uit". Dit klopt dan toch niet?
Of kijkt if($submit) ook of de $submit bestaat? Dat doe ik altijd met if(isset($submit)) namelijk.
Dat principe is hetzelfde, moet je nooit gebruiken.

  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 15:45 schreef joostbaksteen het volgende:

[..]

Dat principe is hetzelfde, moet je nooit gebruiken.
Over welk principe hebben we het dan:
- het <form method="post"> en $REQUEST_METHOD == 'POST'
- kijken of $submit bestaat met isset($submit) ?

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • JoostBaksteen
  • Registratie: December 2000
  • Laatst online: 27-03 19:32
Op donderdag 17 januari 2002 15:50 schreef blackd het volgende:

[..]

Over welk principe hebben we het dan:
- het <form method="post"> en $REQUEST_METHOD == 'POST'
- kijken of $submit bestaat met isset($submit) ?
Dat je niet if (isset($submit)) { (of andere soorten als if($submit!='') etc) moet gebruiken. Dit valt veel te makkelijk te faken.

Dus je moet if($REQUEST_METHOD == 'POST') gebruiken om te checken of een formulier gesubmit is.

Verwijderd

En als je nou meerdere formulieren hebt ?

  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 16:28 schreef RealGamer het volgende:
En als je nou meerdere formulieren hebt ?
Ik neem aan dat dit gaat over $REQUEST_METHOD=='POST'?
Dat maakt dan volgens mij niks uit, want 't script kijkt of 't formulier gesubmit is, en of 't niet aangepast in de URL is. toch?

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


Verwijderd

Op donderdag 17 januari 2002 15:06 schreef blackd het volgende:

[..]

Ten eerste:
ik heb het zojuist onderbouwd...
ten tweede:
aangezien iedereen geen parse fouten zag, leek mij dat nog een mogelijkheid. 't valt altijd te proberen ;)
ik heb denk ik je post niet helemaal (of half) goed gelezen... snap het nu iig niet meer ;)
/me jurriebur dacht dat je gewoon overgenomen had van php.net zonder te weten wat het nou eigenlijk inhield, de tweede die ik op z'n ziel trap vandaag :P

Verwijderd

Op donderdag 17 januari 2002 15:09 schreef blackd het volgende:
Eh. losse opmerking
Wat gebeurt er met dat if($submit)?
Wordt dat misschien beinvloedt door dit:
<input type="hidden" name="submit" value="maakt_niet_uit">

moet dat 'maakt_niet_uit' niet 'true' zijn?
nope, maakt geen fuck uit, php checkt of $submit true is, submit = true als er een waarde in zit (en nog wat voorwaarden), er zit iets in, dus is het true...

Verwijderd

Stel ik heb 2 formulieren op 1 pagina, de ene formulier is voor het aanmelden en de andere is voor bestelling bevestigen. Kan ik $REQUEST_METHOD dan voor beide formulieren gebruiken zonder dat er wat mis gaat ?

  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 16:36 schreef jurriebur het volgende:

[..]

ik heb denk ik je post niet helemaal (of half) goed gelezen... snap het nu iig niet meer ;)
/me jurriebur dacht dat je gewoon overgenomen had van php.net zonder te weten wat het nou eigenlijk inhield, de tweede die ik op z'n ziel trap vandaag :P
en dat is de 2e keer vandaag :'(
(nee, jurriebur heeft me niet 2x op mijn ziel getrapt ... een of andere debiel vond het zo nodig om de mobiel van mijn vriendin tot zijn eigen bezit te 'degraderen'... :()

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


  • blackd
  • Registratie: Februari 2001
  • Niet online
Op donderdag 17 januari 2002 16:41 schreef RealGamer het volgende:
Stel ik heb 2 formulieren op 1 pagina, de ene formulier is voor het aanmelden en de andere is voor bestelling bevestigen. Kan ik $REQUEST_METHOD dan voor beide formulieren gebruiken zonder dat er wat mis gaat ?
Je PHP script checkt d.m.v. $REQUEST_METHOD alleen of het formulier doormiddel van method="POST" is gesubmit, en niet via "GET". Je kan het dus volgens mij voor beide formulieren gebruiken, mits je er ook <form method="POST"> in zet (laatste weet ik niet zeker).

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


Verwijderd

Ik ga het proberen.

edit:
Nee, het werkt niet met 2 formulieren.
Pagina: 1