[PHP] Parse error: T_CONSTANT_ENCAPSED_STRING

Pagina: 1
Acties:
  • 133 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
Ik ben een installatie script aan het maken die een complete database maakt in MySQL.
Dit gedeelte heb ik geheel aan de praat, maar als ik iets wil toevoegen via het "Installatie script", krijg ik de volgende error:

"Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\Program Files\Apache Group\Apache2\htdocs\CentraalPark\Installation\admin.php on line 4"

Ik ben aan het zoeken geweest via Google, en via PHP.net maar kon met beide niks vinden wat mij kon helpen...
Ik hoop dat jullie mij kunnen helpen :)

PHP:
1
2
3
4
5
6
7
8
9
10
<?
mysql_select_db("Vakantieparkje")
or die ("Could not select database");
$sql = 'INSERT INTO `users` (`id`, `user`, `password`, `userid`) VALUES (''1'', ''Administrator'', ''wachtwoord'', 

''Administrator'')';";
mysql_query($sql)
or die ("[img]\"fout.gif\">");
echo[/img]";
?>

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 00:18
Met highlighting zie je het zo. Er staan wat " en 's verkeerd :)

|>


Acties:
  • 0 Henk 'm!

  • ludo
  • Registratie: Oktober 2000
  • Laatst online: 26-04-2024
Escapen in PHP doe je met een backslash (\) en niet met dubbele quotes... Dat is ook te zien aan de highlighting...

[ Voor 6% gewijzigd door ludo op 17-12-2004 20:43 ]


Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
Simon schreef op vrijdag 17 december 2004 @ 20:42:
Met highlighting zie je het zo. Er staan wat " en 's verkeerd :)
dit is wat phpmyadmin mij gaf ;)

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 00:18
DjMaGiCh schreef op vrijdag 17 december 2004 @ 20:43:
[...]


dit is wat phpmyadmin mij gaf ;)
No offence, maar met een beetje rommelzoren zou je er ook zijn gekomen :P :)

Het is puur een kwestie van wat verkeerd staande aanhalingstekens of escapes

|>


Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
ludo schreef op vrijdag 17 december 2004 @ 20:42:
Escapen in PHP doe je met een backslash (\) en niet met dubbele quotes... Dat is ook te zien aan de highlighting...
Als je het over het onderste gedeelte hebt, dit werkt in de andere scriptjes perfect, dus het gaat puur om de $sql query...

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
Simon schreef op vrijdag 17 december 2004 @ 20:44:
[...]


No offence, maar met een beetje rommelzoren zou je er ook zijn gekomen :P :)

Het is puur een kwestie van wat verkeerd staande aanhalingstekens of escapes
Tja... Not the best programmer here ;)

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
DjMaGiCh schreef op vrijdag 17 december 2004 @ 20:46:
[...]


Tja... Not the best programmer here ;)
And never will be, als je niet leert debuggen.

[ Voor 4% gewijzigd door Grijze Vos op 17-12-2004 20:49 ]

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

  • Superdeboer
  • Registratie: December 2002
  • Niet online

Superdeboer

Sa-weee-tah

Probeer dit eens... en bekijk anders eens wat codevoorbeelden op www.php.net/mysql om de juiste syntax uit te vogelen.

PHP:
1
2
3
4
mysql_select_db("Vakantieparkje") or die ("Could not select database");
$sql = "INSERT INTO users (id, user, password, userid) VALUES ('1', 'Administrator', 'wachtwoord', 'Administrator')";
mysql_query($sql) or die ("<img src=\"fout.gif\">");
echo "<img src=\"vinkje.jpg\">";

When I write my code, only God and I know what it means. One week later, only God knows.
Hell yes it's a Cuban Cigar, but I'm not supporting their economy, I'm burning their fields.


Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
Grijze Vos schreef op vrijdag 17 december 2004 @ 20:49:
[...]


And never will be, als je niet leert debuggen.
Ben er nu druk mee bezig ;)
***Probeer uiteraard ook zelf nog het 1 en ander***

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
Superdeboer schreef op vrijdag 17 december 2004 @ 20:49:
Probeer dit eens... en bekijk anders eens wat codevoorbeelden op www.php.net/mysql om de juiste syntax uit te vogelen.

PHP:
1
2
3
4
mysql_select_db("Vakantieparkje") or die ("Could not select database");
$sql = "INSERT INTO users (id, user, password, userid) VALUES ('1', 'Administrator', 'wachtwoord', 'Administrator')";
mysql_query($sql) or die ("[img]\"fout.gif\">");
echo[/img]";
Yup deze werkt bij mij :)
Ik heb zelf een ander stukje code gemaakt die ook werkt.
PHP:
1
2
3
4
5
6
7
8
9
10
11
<?
mysql_select_db("Vakantieparkje")
or die ("Could not select database");
$sql = "INSERT INTO `users` ( `id` , `user` , `password` , `userid` ) 
VALUES (
'', 'Admin', 'password', 'administrator'
);;";
mysql_query($sql)
or die ("[img]\"fout.gif\">");
echo[/img]";
?>

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • Superdeboer
  • Registratie: December 2002
  • Niet online

Superdeboer

Sa-weee-tah

DjMaGiCh schreef op vrijdag 17 december 2004 @ 20:51:
[...]
Yup deze werkt bij mij :)
Ik heb zelf een ander stukje code gemaakt die ook werkt.
PHP:
7
);;";
Wat is volgens jou de functie van die eerste twee dubbele punten daar? :)

When I write my code, only God and I know what it means. One week later, only God knows.
Hell yes it's a Cuban Cigar, but I'm not supporting their economy, I'm burning their fields.


Acties:
  • 0 Henk 'm!

  • ludo
  • Registratie: Oktober 2000
  • Laatst online: 26-04-2024
DjMaGiCh schreef op vrijdag 17 december 2004 @ 20:45:
[...]


Als je het over het onderste gedeelte hebt, dit werkt in de andere scriptjes perfect, dus het gaat puur om de $sql query...
Ik had het ook over de $sql query :P Jij bent die query daar met dubbele quotes op een correcte SQL wijze aan het escapen, maar die query stelt daar nog niks anders voor dan een php variabele van het type string. En in PHP moet je variabelen escapen met een backslash :)

Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
Superdeboer schreef op vrijdag 17 december 2004 @ 20:56:
[...]

Wat is volgens jou de functie van die eerste twee dubbele punten daar? :)
Geen was typo ;)

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • vinnie1908
  • Registratie: September 2001
  • Laatst online: 05-09 11:02

vinnie1908

Appel != peer

Superdeboer schreef op vrijdag 17 december 2004 @ 20:49:
Probeer dit eens... en bekijk anders eens wat codevoorbeelden op www.php.net/mysql om de juiste syntax uit te vogelen.

PHP:
1
2
3
4
mysql_select_db("Vakantieparkje") or die ("Could not select database");
$sql = "INSERT INTO users (id, user, password, userid) VALUES ('1', 'Administrator', 'wachtwoord', 'Administrator')";
mysql_query($sql) or die ("[img]\"fout.gif\">");
echo[/img]";
Veldnamen tussen `` hè ;)

PHP:
1
2
3
4
mysql_select_db("Vakantieparkje") or die ("Could not select database");
$sql = "INSERT INTO users (`user`, `password`, `userid`) VALUES ('Administrator', 'wachtwoord', 'Administrator')";
mysql_query($sql) or die ("[img]\"fout.gif\">");
echo[/img]";


Daarbij zou ik `id` helemaal niet invoeren aangezien ik vermoed dat het een auto-increment veld is. Als je de rest invult maakt hij zelf het ID +1 :)

"Sometimes I have a difficult time handling myself in social situations. I just start scampering around neurotically, frantically jumping all over guests. I think it all goes back to when I was raised in the wild by miniature schnauzers."


Acties:
  • 0 Henk 'm!

  • HarryL
  • Registratie: Januari 2003
  • Laatst online: 17-04 18:29

HarryL

127.0.0.1

Topicstarter
vinnie1908 schreef op vrijdag 17 december 2004 @ 22:35:
[...]


Veldnamen tussen `` hè ;)

PHP:
1
2
3
4
mysql_select_db("Vakantieparkje") or die ("Could not select database");
$sql = "INSERT INTO users (`user`, `password`, `userid`) VALUES ('Administrator', 'wachtwoord', 'Administrator')";
mysql_query($sql) or die ("[img]\"fout.gif\">");
echo[/img]";


Daarbij zou ik `id` helemaal niet invoeren aangezien ik vermoed dat het een auto-increment veld is. Als je de rest invult maakt hij zelf het ID +1 :)
Klopt inderdaad :) Ik heb dit ook weggelaten :)

I have gone to find myself, if I get back before I return, Please keep me here! PSNID: djmagich


Acties:
  • 0 Henk 'm!

  • Superdeboer
  • Registratie: December 2002
  • Niet online

Superdeboer

Sa-weee-tah

Waarom? De MySQL-manual eist dat volgens mij niet en ook in de praktijk is het niet nodig? Ik heb ook nog nooit gelezen dat dat good practice is ofzo... Dat phpMyadmin dat doet vind ik best, maar ik hoef het niet. Ik gebruik ook geen spaties in m'n veldnamen ofzo... Volgens mij is het echt niet noodzakelijk. :)

When I write my code, only God and I know what it means. One week later, only God knows.
Hell yes it's a Cuban Cigar, but I'm not supporting their economy, I'm burning their fields.


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Superdeboer schreef op zaterdag 18 december 2004 @ 00:18:
[...]

Waarom? De MySQL-manual eist dat volgens mij niet en ook in de praktijk is het niet nodig? Ik heb ook nog nooit gelezen dat dat good practice is ofzo... Dat phpMyadmin dat doet vind ik best, maar ik hoef het niet. Ik gebruik ook geen spaties in m'n veldnamen ofzo... Volgens mij is het echt niet noodzakelijk. :)
het is aan te raden om toch `` te gebruiken bij veld namen, het kan wel zonder maar zodra je velden krijgt als "order" of "from" dan moet je wel, dus is het handig om gewoon een goede gewoonte om altijd die velden te omsluiten met backtics :)
Pagina: 1