Foros del Web » Programando para Internet » PHP »

Error Sencillo PHP y MySQL

Estas en el tema de Error Sencillo PHP y MySQL en el foro de PHP en Foros del Web. Tiene pinta de ser una tonteria, pero ahora mismo no caigo. Es algo que tiene que ver con envios SMS. Para el texto que se ...
  #1 (permalink)  
Antiguo 21/04/2009, 03:20
 
Fecha de Ingreso: abril-2009
Mensajes: 48
Antigüedad: 15 años
Puntos: 5
Error Sencillo PHP y MySQL

Tiene pinta de ser una tonteria, pero ahora mismo no caigo. Es algo que tiene que ver con envios SMS. Para el texto que se envia tenía algo de este estilo:

Código PHP:
$enviar "$nombre, se elimino su reserva del $fechaReserva para $personas personas, si tiene alguna duda llame al $telefonoRest "
Ahora quiero que se pueda personalizar, por lo que he añadido un campo a una base de datos con esta linea de texto, y he sustituido esa linea, por:

Código PHP:
$result mysql_query("SELECT * FROM tabla WHERE idRestaurante='$idRestaurante'");
$enviar mysql_result($result0'sms_Eliminar'); 
En la primera versión se envía correctamente el texto, pero en la segunda no se sustituyen las variables por su valor real y el texto que se envía es exactamente:

Cita:
$nombre, se elimino su reserva del $fechaReserva para $personas personas, si tiene alguna duda llame al $telefonoRest
en vez de :

Cita:
Mario, se elimino su reserva del 15/04/2009 para 5 personas, si tiene alguna duda llame al 915000000
Gracias por solucionarmelo, tiene pinta de que me voy a sentir retrasado con la solución ;)
  #2 (permalink)  
Antiguo 21/04/2009, 03:22
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 3 meses
Puntos: 13
Respuesta: Error Sencillo PHP y MySQL

si no voy mal

Cita:
"$enviar = $nombre.", se elimino su reserva del $fechaReserva para".$personas." personas, si tiene alguna duda llame al ".$telefonoRest ;]
:D

Última edición por Bam_Margera; 21/04/2009 a las 04:14
  #3 (permalink)  
Antiguo 21/04/2009, 03:36
 
Fecha de Ingreso: abril-2009
Mensajes: 48
Antigüedad: 15 años
Puntos: 5
Respuesta: Error Sencillo PHP y MySQL

Como?

el código que tengo ahora es:

Código PHP:
$result mysql_query("SELECT * FROM tabla WHERE idRestaurante='$idRestaurante'");
$enviar mysql_result($result0'sms_Eliminar'); 
y en la BBDD tengo:

Cita:
"$nombre, se elimino su reserva del $fechaReserva para $personas personas, si tiene alguna duda llame al $telefonoRest "
¿Como encaja lo que me respondes?

P.D: Gracias por la rapida contestación, que yo no la caze no implica qe no sea buena :D
  #4 (permalink)  
Antiguo 21/04/2009, 04:13
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 3 meses
Puntos: 13
Respuesta: Error Sencillo PHP y MySQL

Esque según creo, al generar el HTML no te va a concatenar las variables con el resto del string, sinó que lo va a interpretar todo como el mismo string..

prueba a poner el texto que he puesto antes en lugar del que tienes en la bbdd..
  #5 (permalink)  
Antiguo 21/04/2009, 05:08
 
Fecha de Ingreso: abril-2009
Mensajes: 48
Antigüedad: 15 años
Puntos: 5
Respuesta: Error Sencillo PHP y MySQL

Esto tampoco me funciona. Ahora estoy peleandome con la función eval() de PHP pero por ahora tampoco lo consigo.

Espero ir por lo menos bien encaminado.
  #6 (permalink)  
Antiguo 21/04/2009, 05:36
 
Fecha de Ingreso: septiembre-2007
Mensajes: 29
Antigüedad: 16 años, 7 meses
Puntos: 3
Respuesta: Error Sencillo PHP y MySQL

No se si hay una forma mejor pero podrías utilizar la funcion str_replace, me explico:

Código PHP:
Ver original
  1. $mensajefinal= str_replace("$nombre", $nombre, $mensaje);

Lo que haces es buscar dentro de la frase las variables escritas como texto y cambiarlas por el contenido de la variable nombre.

Espero que te sirva
  #7 (permalink)  
Antiguo 21/04/2009, 07:29
 
Fecha de Ingreso: abril-2009
Mensajes: 48
Antigüedad: 15 años
Puntos: 5
Respuesta: Error Sencillo PHP y MySQL

Esa es buena opción, aunque al intentar que sea configurable. Pueden llegar a ser una docena de valores los que debo sustituir.

Por lo que espero encontrar otra solución mejor, pero llegado el caso esa siempre esta.
  #8 (permalink)  
Antiguo 21/04/2009, 07:52
 
Fecha de Ingreso: abril-2009
Mensajes: 48
Antigüedad: 15 años
Puntos: 5
Respuesta: Error Sencillo PHP y MySQL

Bueno, gracias a todos. Al final usando eval() ha salido. Así queda la solución final:

Código PHP:
$result mysql_query("SELECT * FROM tabla WHERE idRestaurante='$idRestaurante'");
$enviar mysql_result($result0'sms_Eliminar');
eval(
"\$enviar = \"$enviar\";"); 
Y en la BBDD he quitado las dobles comillas que le había puesto a la frase.

Espero que os sirva de ayuda, y gracias a todos por vuestra ayuda.
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 03:17.