Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/01/2007, 19:22
Avatar de -=ArgoN=-
-=ArgoN=-
 
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 18 años, 6 meses
Puntos: 1
Re: Error en un "eval()"

Gracias por responder Federico,

En realidad si que quiero que me evalue el código que almaceno en la base de datos. Es una forma que estoy probando de usar para no tener que crear muchos campos en la DB mysql. Creo una cadena con todas las variables y sus valores, y cuando quiero que tomen valor, ejecuto esa cadena como un codigo con la funciona eval().

He probado lo que me sugierias en el primer post pero da otro error:

Cita:
Parse error: syntax error, unexpected T_STRING in /mounted-storage/home37a/sub002/sc30230-UGAH/top100anuncios/cpanel/noticias.php(313) : eval()'d code on line 1
Y la cadena correspondiente al código a evaluar que me devuelve es la siguiente:

Código PHP:
"$custom_pattern = "Bienvenida Clientes";$loaded = "";$send_email = "0";$pattern_name = "Bienvenida Clientes";" 
Pero segun el manual de www.php.net de la funcion eval() las expresiones para evaluar tienen que ser equivalentes a un código normal en php pero para que no considere el símbolo $ como caracter hay qe ponerle \$, y de igual modo pasa con las comillas que delimitan el contenido de la variable:

Código PHP:
eval("\$body = \"$body\";"); //este codigo si que funciona 
En cambio el que estoy usando yo es muy parecido:

Código PHP:
"\$custom_pattern = \"Bienvenida Clientes\";\$loaded = \"\";\$send_email = \"0\";\$pattern_name = \"Bienvenida Clientes\";" 
Pero me da un error al evaluarlo y no se porque Quizas es porque no separo las linias y las pongo todas juntas pero no creo...

Gracias.

ArgoN