Foros del Web » Programando para Internet » PHP »

meter entre comillas "codigo" Si el codigo el cual quiero meter tiene comillas " y '

Estas en el tema de meter entre comillas "codigo" Si el codigo el cual quiero meter tiene comillas " y ' en el foro de PHP en Foros del Web. Hola, me gustaria meter dentro de una variable todo un codigo php, pero tengo un problema, la variable es $valor="codigo" Tiene comillas y el codigo ...
  #1 (permalink)  
Antiguo 09/01/2004, 18:16
 
Fecha de Ingreso: febrero-2003
Mensajes: 753
Antigüedad: 14 años, 10 meses
Puntos: 2
meter entre comillas "codigo" Si el codigo el cual quiero meter tiene comillas " y '

Hola, me gustaria meter dentro de una variable todo un codigo php, pero tengo un problema, la variable es $valor="codigo" Tiene comillas y el codigo que quiero poner tiene comillas simples y comillas normales, ¿como podria ponerlo? os dejo el codigo que quiero meter en

$valor="codigo"

codigo:
Código PHP:
$cadena=$_POST['num'];
if (
ereg("^(651|652|653|654|655|656|675|657|658|605|615|625|635|645|665)([0-9]{6})$",$cadena)) {
$comando "gsgc --host localhost --send " $_POST['num'] . " \""$_POST['msgText'] . " Cortsia de MarruSMS." "\"" ;
exec ($comando);
include(
"config.php");
$sql "UPDATE usuarios SET nivel_acceso=nivel_acceso-1 WHERE id='{$_SESSION['usuario_super']}'";
mysql_query($sql) or die(mysql_error());
$_SESSION['usuario_foco']--;
} else {
echo 
"no valido: $cadena";

Un Saludo

Última edición por escan_0; 09/01/2004 a las 18:17
  #2 (permalink)  
Antiguo 09/01/2004, 18:26
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
supongo que la variable es $_POST['msgText']...
Revisa primero qué cadena se está generando en $comando para que puedas ver qué es lo que pasa.

pon por ejemplo:
Código PHP:
$comando "gsgc --host localhost --send " $_POST['num'] . " \""$_POST['msgText'] . " Cortsia de MarruSMS." "\"" ;
die(
$comando);//acá detienes la ejecuión del script y envías la cadena como salida al navegador.
exec($comando); 
Recuerda BORRAR la línea al solucionar el problema.
Saludos

Última edición por jpinedo; 09/01/2004 a las 18:31
  #3 (permalink)  
Antiguo 09/01/2004, 18:29
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Normalmente se soluciona con la función addslashes()
http://www.php.net/manual/es/function.addslashes.php

Saludos
  #4 (permalink)  
Antiguo 09/01/2004, 18:30
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Es decir, quieres meter todo ese codigo en una variable. Lo vas a poner a mano. Si es asi, te toca escapar con \ las comillas ". Y si ademas quieres que en la variable quede alamacenado $var en lugar de su valor actual, tambien debes escapar los caracteres $.

Mas info: http://www.php.net/manual/en/language.types.string.php

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 09/01/2004, 18:38
 
Fecha de Ingreso: febrero-2003
Mensajes: 753
Antigüedad: 14 años, 10 meses
Puntos: 2
Pues exactamente lo que quiero hacer es meter dentro de $code="codigo" para asi si el reresultado es 1 se ejecuta el coamando

Código PHP:
$error="Lo siento no te quedan créditos, por hoy.";
$code="Codigo";
$igual=$_SESSION['usuario_foco'];
if (
$igual == "0")
{echo 
"$error";}
elseif (
$idioma=="1")
{echo 
"$code";} 
Voy a mirar vuestros links, gracias

  #6 (permalink)  
Antiguo 09/01/2004, 18:45
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
¿¿Y cuál es la ventaja de guardar el código en una variable???

Si se te hace muy pesado o simplemente no te gusta poner todo el code en la página, mejor guárdalo en otro archivo "codigo.php"
y, si es el caso, lo incluyes vía include()...
O sea:
Código PHP:
$error="Lo siento no te quedan créditos, por hoy.";
$code="Codigo";
$igual=$_SESSION['usuario_foco'];
if (
$igual == "0")
{echo 
"$error";}
elseif (
$idioma=="1")
{include(
"codigo.php");} 
Saludos

Última edición por jpinedo; 09/01/2004 a las 18:47
  #7 (permalink)  
Antiguo 09/01/2004, 19:12
 
Fecha de Ingreso: febrero-2003
Mensajes: 753
Antigüedad: 14 años, 10 meses
Puntos: 2
Gracias, no habia caido en un include.

  #8 (permalink)  
Antiguo 09/01/2004, 19:17
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Por cierto, esto
Código PHP:
echo "$codigo"
No ejecutaria el codigo, sino que lo mostraria en el navegador.

Para ejecutar codigo de una cadena tienes eval() (www.php.net/eval).

Y sobre tu caso, ¿no seria mas facil meter ese codigo en una funcion? Y asi simplemente llamar a la funcion en el if.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #9 (permalink)  
Antiguo 09/01/2004, 19:30
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 14 años, 5 meses
Puntos: 2
lee esto te servira

http://php-hispano.net/archivos/FAQs/140
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #10 (permalink)  
Antiguo 09/01/2004, 19:32
 
Fecha de Ingreso: febrero-2003
Mensajes: 753
Antigüedad: 14 años, 10 meses
Puntos: 2
Gracias por sus respuestas, lo mirare todo a ver si puedo hacerlo

un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:45.