[php] string met superglobal eval'en

Pagina: 1
Acties:

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
Mijn probleem:

• Ik heb in een db veld de volgende php code staan:
PHP:
1
$_SESSION["username"]


Deze wil ik tijdens het echo'en laten eval()'en, zodat er uiteindelijk 'pietje' komt te staan bijvoorbeeld.

Nu is het probleem, als ik doe:
PHP:
1
2
$dbcontent '$_SESSION["username"]';
eval($dbcontent);


dan krijg ik de fout:
code:
1
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in test.php on line 3



Op php.net kan ik zo nix vinden over dit probleem...

Wat doe ik fout :?

Stop uploading passwords to Github!


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 29-08 03:21

.oisyn

Moderator Devschuur®

Demotivational Speaker

eval () is een vieze functie en hoor je niet te gebruiken.

nou is dit niet een verklaring voor je probleem (t zal wel een bug zijn), maar wel een oplossing: niet gebruiken dus :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
.oisyn schreef op 30 oktober 2002 @ 15:32:
eval () is een vieze functie en hoor je niet te gebruiken.

nou is dit niet een verklaring voor je probleem (t zal wel een bug zijn), maar wel een oplossing: niet gebruiken dus :)
Ik weet ook wel dat eval() een vieze functie is :P maar het is wel erg makkelijk als je php code in je database wil zetten....

Stop uploading passwords to Github!


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 29-08 22:51

D2k

Papa Eend schreef op 30 oktober 2002 @ 15:35:
[...]


Ik weet ook wel dat eval() een vieze functie is :P maar het is wel erg makkelijk als je php code in je database wil zetten....

en dat wil je ook niet ;)

Doet iets met Cloud (MS/IBM)


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
D2k schreef op 30 oktober 2002 @ 15:37:

[...]

en dat wil je ook niet ;)
nou, eigenlijk wil ik dat wel, want het is wel erg makkelijk voor wat ik aan het schrijven ben... maarja, dat komt dan later wel.

thx iig

Stop uploading passwords to Github!


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 29-08 03:21

.oisyn

Moderator Devschuur®

Demotivational Speaker

tja je kunt er natuurlijk omheen werken door $HTTP_SESSION_VARS te gebruiken... (wel eerst als global declareren)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Papa Eend schreef op 30 oktober 2002 @ 15:40:
[...]

nou, eigenlijk wil ik dat wel, want het is wel erg makkelijk voor wat ik aan het schrijven ben... maarja, dat komt dan later wel.

thx iig


Laat ons niet in het ongewisse dan ;) Wat ben je aan het schrijven, en waarom denk je dat letterlijke php code opslaan in de database een oplossing daarop is..

Kan me geen scenario indenken namelijk ;)

Verwijderd

Het probleem is natuurlijk dat je een = teken bent vergeten, op regel 2.

Overigens zou die eval regel niet erg veel doen. Als het nou een echo oid bevatte, dan deed het tenminste nog iets.

code:
1
$variabele;

Dit is een volkomen geldig statement, maar wat is het nut? :)
(als je geen rekening houdt met stacks)

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
Verwijderd schreef op 30 oktober 2002 @ 15:45:
Het probleem is natuurlijk dat je een = teken bent vergeten, op regel 2.

Overigens zou die eval regel niet erg veel doen. Als het nou een echo oid bevatte, dan deed het tenminste nog iets.

code:
1
$variabele;

Dit is een volkomen geldig statement, maar wat is het nut? :)
(als je geen rekening houdt met stacks)
mjah, da's eerder een tikfoutje bij het overtikken van mn code :P mijn excuses.

Voor degenen die willen weten waar dit nuttig voor is: ik ben bezig met een online-form builder, je kan complete multi-page forms definieren via een simpel invul schermpje.

Stop uploading passwords to Github!


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

offtopic:
lastig, ctrl-c, ctrl-v :X


Is 't mij nog steeds niet duidelijk waar je dan eval voor nodig hebt...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 21:25
(jarig!)
Volgens mij missen we wat essentiële info (ik kan om te beginnen geen regel 3 vinden).

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Vaag het zou gewoon moeten werken hoor....

dit werkt namelijk ook
PHP:
1
2
3
4
5
6
echo $_SERVER["REMOTE_ADDR"];
echo "<HR>";
$test= 'echo    $_SERVER["REMOTE_ADDR"];'    ;
echo $test;
echo "<HR>";
eval($test);


output:
code:
1
2
3
4
5
192.168.1.5
--------------------------------------------------------------------------------
echo $_SERVER["REMOTE_ADDR"];
--------------------------------------------------------------------------------
192.168.1.5

Programmer - an organism that turns coffee into software.


  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-08 18:36
Zal wel liggen aan die puntkomma.
Ja dus, eerste hit: http://www.google.nl/sear...hl=nl&btnI=Ik+doe+een+gok

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
Inderdaad. dat was het lompe dus :D je moet echt een regel php erin zetten, en deze netjes afsluiten met een ;. lomp!

thx allemaal

Stop uploading passwords to Github!


  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Papa Eend schreef op 31 oktober 2002 @ 12:14:
Inderdaad. dat was het lompe dus :D je moet echt een regel php erin zetten, en deze netjes afsluiten met een ;. lomp!

thx allemaal
heel gek ;)
Pagina: 1