Foros del Web » Programando para Internet » PHP »

enviar resultado de contador a email

Estas en el tema de enviar resultado de contador a email en el foro de PHP en Foros del Web. Ayuda plissss tengo el siguiente problema que me esta volviendo locooooo. tengo el siguiente código "contador" inserto dentro de un formulario que envia los datos ...
  #1 (permalink)  
Antiguo 16/11/2002, 15:04
 
Fecha de Ingreso: enero-2002
Mensajes: 36
Antigüedad: 22 años, 3 meses
Puntos: 0
enviar resultado de contador a email

Ayuda plissss tengo el siguiente problema que me esta volviendo locooooo.

tengo el siguiente código "contador" inserto dentro de un formulario que envia los datos ingresados por usuarios a mi email

<?

$contador=1;
if(file_exists("contador.ccc"))
{
$f=fopen("contador.ccc","r");
$contador=fread($f,filesize("contador.ccc"));
$contador++;
fclose($f);
}

$f=fopen("contador.ccc","w");
fwrite($f,$contador,strlen($contador));
fclose($f);
echo"<font size=2> $contador<BR>";

$u=get_current_user();
echo"<font size=1>anote este numero $u</font><BR>";
?>


... y lo que quiero es que el resultado del contador (ej. 35) que lo saca del archivo contador.ccc me lo entregue a mi email junto con el resto de los datos.

algo asi:

<td width=\"200\" nowrap> Tipo del Problema </td>
<td width=\"300\">
: ".htmlspecialchars(stripslashes($tipoproblema) ) ."
</td>
</tr>
<tr>
<td width=\"200\" nowrap> Descripción del Problema </td>
<td width=\"300\">
: ".htmlspecialchars(stripslashes($descripcionproble ma)) ."
</td>
</tr>
<tr>
<td width=\"200\" nowrap> N° de la Presentación </td>
<td width=\"300\">
: ".print ($contador) ."
</td>
</tr>

en donde dice ".print ($contador)." solo me llega un numero 1 a mi email pero no puedo hacer que funcione como el que se visualiza en pantalla.

Ojalá alguien me pueda ayudar.
__________________
Atte.
Carlanga
  #2 (permalink)  
Antiguo 16/11/2002, 21:57
Avatar de AngelRoyo  
Fecha de Ingreso: marzo-2002
Ubicación: Santiago de Chile
Mensajes: 207
Antigüedad: 22 años, 1 mes
Puntos: 5
Según dices que por pantalla (lo que mostraste) se despliega el valor correcto de $contador y que por mail solo te muestra un 1.
Y donde esta el código que hace posible el envio por email?, quizas ahí este el problema, y si muestra 1 es por que eso vale la la variable que debe estar tomando ese valor en alguna línea de código.

Hay que ver el código del email también.

Saludos.
Creo que estoy escribiendo mejor... jejeje....
__________________
Hacerlo Bien Haciendo el Bien.
Jaso ezazu agur bero bat.
(c) 2002. Made in Chile.
Mi sistema es:
Win(98);Apache(1.3.x);PHP(4.1.1);mySQL(3.23.x)
!Califica este POSTEO¡
  #3 (permalink)  
Antiguo 17/11/2002, 07:01
 
Fecha de Ingreso: enero-2002
Mensajes: 36
Antigüedad: 22 años, 3 meses
Puntos: 0
Saludos Amigo

Mi intención no fué enojarme ni mcuho menos en todo caso te agradezco la respuesta y por si puedes seguir ayudandome a mi terrible problema aqui estan el código del fichero send.php

hFormulario (llena todos los campos excepto donde dice Rut).
Verás que al final te entrega un numero correlativo de atención del reclamo. Bueno ese mismo numero debería llegarme junto con el resto de la información pero en el campo: Número de la Presentación, solo aparece "1" y no es igual al que se visualiza al cliente.


Este es el código del fichero send.php :


Si te fijas las lineas en Rojo representan el ultimo campo que envia el fichero al email y es donde creo tener el problema.

Las lineas en Azul representan el código del Contador que me despliega el numero correlativo al usuario.

Ojalá puedas ayudarme

Un Abrazo !!!
__________________
Atte.
Carlanga
  #4 (permalink)  
Antiguo 17/11/2002, 07:47
 
Fecha de Ingreso: noviembre-2002
Mensajes: 9
Antigüedad: 21 años, 5 meses
Puntos: 0
Mmmm!!

Me quedo un poco asombrado de que este código funcione para el usuario tan siquiera, porque la variable $visitas que pones en tu contador no adquiere ningun valor hasta que ejecutas el código que está en azul. En mi opinión ese código (el de azul, que genera el archivo que contiene el nº de visitas)debería estar antes del código marcado en rojo.

¿Es posible esto que te he dicho?
Es posible que no haya visto el código correctamente, pero en principio me parecería que es eso lo que pudiera ocurrir.

Un saludazo.
  #5 (permalink)  
Antiguo 17/11/2002, 08:19
 
Fecha de Ingreso: enero-2002
Mensajes: 36
Antigüedad: 22 años, 3 meses
Puntos: 0
Hola Pachi

me dices entonces que debería colocar el código del contador arriba y asi funcionar.?

Lo intentaré pero yo lo que tengo seguro es que donde tengo el problema es como colocar la sintaxis en las lineas rojas

<td width=\"200\" nowrap> N° de la Presentación </td>
<td width=\"300\">
: ".print ($contador) ."

pienso que debería ir de otra manera y como no soy experto en php, solo un simple mortal tengo el problema.

lo unico que me llega al email son todos los campos que asigno pero en el ultimo, osea N° de la Presentación: solo aparece siempre "1" y es por que al colocar $contador me muestra el valor que ya tiene la primera linea del código del contador pero como hago que me entrege a mi email el resulato de lo que arroja el código en verde:

<?

$visitas=1;
if(file_exists("contador.zap"))
{
$f=fopen("contador.zap","r");
$visitas=fread($f,filesize("contador.zap"));
$visitas++;
fclose($f);
}

$f=fopen("contador.zap","w");
fwrite($f,$visitas,strlen($visitas));
fclose($f);
echo"<font size=2> $visitas <BR>";

$u=get_current_user();
echo"<font size=1>Coopelan $u</font><BR>";
?>


Saludos,
__________________
Atte.
Carlanga
  #6 (permalink)  
Antiguo 17/11/2002, 14:49
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Tu problema que estas usando la funcion print() dentro de una cadena. La funcion print() manda el texto al navegador, no concatena el valor de la variable. El 1 que te llega es el valor que devuelve print() cuando se ejecuta correctamente. En tu caso solo tendrias que poner:
Código PHP:
<td width="300\">
                    : "
.$visitas.
Con esto te concatena el valor de la variable.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 17/11/2002, 17:08
 
Fecha de Ingreso: enero-2002
Mensajes: 36
Antigüedad: 22 años, 3 meses
Puntos: 0
Saludos Josemi

Hola Josemi ante todo gracias por ayudarme.

Te cuento. hice el cambio como me lo planteas pero sin buenos resultados.

Ejecuto el formulario y no me da error, sin embargo al recibir el email con los datos, el campo "N° de la Presentacion" ahora me aparece en blanco.

???????? realmente no sé que esta pasando.
__________________
Atte.
Carlanga
  #8 (permalink)  
Antiguo 18/11/2002, 14:01
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Es que tambien tienes que poner delante del codigo del envio del email el codigo que actualiza el contador. Tal como lo tienes en tu codigo, en el momento de crear el email todavia no has leido el valor del contador, por eso te aparece el campo vacio.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #9 (permalink)  
Antiguo 18/11/2002, 15:58
 
Fecha de Ingreso: enero-2002
Mensajes: 36
Antigüedad: 22 años, 3 meses
Puntos: 0
Aun con problemas

Hola Jose Miguel,

He hecho lo que me haz dicho pero ahora me aparece un error de sintaxis.

si puedes ayudarme colocando tu las ordenes correctas en el codigo me solucionaria un gran dolor de cabeza.

Dame algun email donde pueda enviarte el codigo para que lo veas.


Un Abrazo,
__________________
Atte.
Carlanga
  #10 (permalink)  
Antiguo 19/11/2002, 15:20
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

No soy muy partirario a solucionar las dudas en "privado", pero puedes colgar tu codigo en alguna web e indicar cual es el error que te da.

Y como ultimo recurso, siempre tienes mi perfil.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 21:23.