Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  php eval märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 06.11.2010 11:29:44 php eval vasta tsitaadiga

krt ma jaman ja jaman siin. kuidas ma saaksin ühe faili sisu muutjuasse nii, et failis olev php töötaks? näiteks:

template.php:
<b>Proov start</b>
<?php echo $test_variable; ?>
<b>END</b>


exec.php:
$test_variable = 'See on test';
$file = file_get_contents('template.php');
$code = eval($file);


see $code = eval ei ole vist õige...

_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
stinger
HV kasutaja

liitunud: 04.10.2003




sõnum 06.11.2010 11:32:26 vasta tsitaadiga

exec:php

$test_variable = 'test';
ob_start();
include'template.php';
$sisu = ob_get_clean();

echo $sisu;
Kommentaarid: 41 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 41
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 10.11.2010 00:17:33 vasta tsitaadiga

a mis teema selle evaliga on? sellega kah kuidagi saab?
_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 10.11.2010 02:12:30 vasta tsitaadiga

keevitaja, eval on kuri käsk, seda tuleks vältida võimalusel.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 10.11.2010 10:22:32 vasta tsitaadiga

no las ta olla... küsimus on endine
_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 10.11.2010 11:40:00 vasta tsitaadiga

No eval() doki järgi tagastab vaid selle, mida sa ise tagastad evalitavas koodis return käsuga.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 10.11.2010 11:43:59 vasta tsitaadiga

ma lugesin kah seda doki, aga ma olen nii lammas, et ei suutnud töötavat koodirida kirjutada. milline see kood ikka siis välja nägema peaks?
_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 10.11.2010 12:22:04 vasta tsitaadiga

keevitaja kirjutas:
ma lugesin kah seda doki, aga ma olen nii lammas, et ei suutnud töötavat koodirida kirjutada. milline see kood ikka siis välja nägema peaks?
php:
  1. echo "Eval() test\n";
  2.  
  3. $code = '$foo = 1; $bar = $foo * 3; return $bar;';
  4. $eval = eval($code);
  5. echo "Code: $code\n";
  6. echo "Result: $eval\n";
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 10.11.2010 16:20:49 vasta tsitaadiga

nii oskan ma kah. aga kuidas see tööle saada:

<pre>
<?php
echo "Eval() test\n";
$code = file_get_contents('test.php');
$eval = eval($code);
echo "Code: $code\n";
echo "Result: $eval\n";


<?php
// test.php
for($i = 0;$i < 3;$i++) {
  echo $i . "test\n";
}

_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 10.11.2010 16:51:30 vasta tsitaadiga

Eemalda test.php'st <?php.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 10.11.2010 19:33:51 vasta tsitaadiga

no siis ta prindib selle test.php lihtsalt välja kui teksti. ka php tagi sulgemine ei aita.
_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
Renka
HV Guru
Renka

liitunud: 01.04.2002



Autoriseeritud ID-kaardiga

sõnum 10.11.2010 20:14:56 vasta tsitaadiga

keevitaja kirjutas:
nii oskan ma kah. aga kuidas see tööle saada:

<pre>
<?php
echo "Eval() test\n";
$code = file_get_contents('test.php');
$eval = eval($code);
echo "Code: $code\n";
echo "Result: $eval\n";


<?php
// test.php
for($i = 0;$i < 3;$i++) {
  echo $i . "test\n";
}


Sin unäite puhul ei tagastata ju midagi vaid prinditakse välja. Tuleb asi OBga kinni püüda.

php:
  1. <pre>
  2. <?php
  3. echo "Eval() test\n";
  4. $code = file_get_contents('test.php');
  5.  
  6. eval($code);
  7. $eval = ob_get_contents();
  8.  
  9. echo "Code: $code\n";
  10. echo "Result: $eval\n";
  11.  
  12.  

_________________
There is no place like 127.0.0.1
Kommentaarid: 71 loe/lisa Kasutajad arvavad:  :: 2 :: 1 :: 61
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 10.11.2010 20:15:53 vasta tsitaadiga

no ta peabki välja printima ju, echo "Code: $code\n";
http://mikk36.eu/test.php
http://mikk36.eu/test2.php
Sinu antud viimasest koodist on muudetud vaid test.php -> test2.php ja ees on <pre> asemel header käsklus.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 10.11.2010 21:16:21 vasta tsitaadiga

no bljääd, stinger ju ammu tõi selle ob (mingi muu asi on kah ob icon_lol.gif ) välja. ühesõnaga siis evaliga ei saa teha samat asja mis ob-ga!
_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 10.11.2010 23:31:46 vasta tsitaadiga

Kindlasti mitte, sellise asja jaoks on include + puhverdamine igast asendist parem.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  php eval
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.