Foros del Web » Programando para Internet » PHP »

problemas con CHMOD-ENVIO

Estas en el tema de problemas con CHMOD-ENVIO en el foro de PHP en Foros del Web. HOLA! ESTABA VIENDO UNA APLICACION PARA DEJAR MENSAJES PERO NO LA PUEDO HACER FUNCIONAR, LE CAMBIO EL PERMISO AL .TXT A 766 COMO DICE AHI ...
  #1 (permalink)  
Antiguo 27/12/2003, 15:38
 
Fecha de Ingreso: agosto-2003
Ubicación: Argentina
Mensajes: 71
Antigüedad: 20 años, 8 meses
Puntos: 0
problemas con CHMOD-ENVIO

HOLA! ESTABA VIENDO UNA APLICACION PARA DEJAR MENSAJES PERO NO LA PUEDO HACER FUNCIONAR, LE CAMBIO EL PERMISO AL .TXT A 766 COMO DICE AHI PERO NO ME FUNCIONA , CUANDO QUIERO ENVIAR EL MENSAJE ME SALE "Se requiere llenar con datos", alguien me puede orientar q puede ser?, cuando lo pruebo en local anda bien, pero no se q pasa.
saludos
aqui está parte del código:

<?
if (!isset($name) || !isset($email) || !isset($message) || empty($name) || empty($email) || empty($message)) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Se requiere llenar con datos.");
exit;
}

$email = strtolower($email);

addentry($name, $email, $message);

function addentry($name, $email, $message) {

$posted = strftime("%D %I:%M %p");

$message = stripslashes($message);

$file = fopen('entry.txt', 'a+');

if (!$file) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Could not open entry.txt file. Change CHMOD levels to 766.");
exit;
}
fputs($file, "<font color=\"#000000\">Nombre:</font> $name\n<font color=\"#000000\">Email:</font> <font color=\"#CCCCCC\"><u><A href=\"mailto:$email\">$email</A></u></font><br>\n<font color=\"#000000\">Hora:</font> $posted\n<font color=\"#000000\">Mensaje:</font> $message\n\n");
fclose($file);
  #2 (permalink)  
Antiguo 27/12/2003, 16:41
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Mra si en tu php.ini o en tu phpinfo() el valor de la directiva register_globals esta a ON (supongo que si). Y mira en tu hosting su valor (supongo que OFF). Y luego mira estas dos FAQs: http://www.forosdelweb.com/showthrea...988#post238988 y http://www.forosdelweb.com/showthrea...989#post238989

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 27/12/2003, 23:29
 
Fecha de Ingreso: agosto-2003
Ubicación: Argentina
Mensajes: 71
Antigüedad: 20 años, 8 meses
Puntos: 0
Problemas con directivas de servidor

hola!!
hice correctamente eso de poner el phpinfo.php y me muestra que la directiva register_globals está en ON tanto en LOCAL VALUE como en MASTER VALUE, pero ahora como hago para ver en el servidor el valor ese que tiene que estar en OFF?
Saludos!!
  #4 (permalink)  
Antiguo 28/12/2003, 04:58
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Habras leido bien?

Para que eso te funcione register_globals tendria que esta a ON.

Para ver en el servidor la configuracion, debes subir ese phpinfo.php a tu host y ejecutarlo.

Igualmente, vuelve a leer las FAQS que te dejo josemi y trata de adaptar ese script que tienes para que funcione, aun con register_globals a OFF

Un saludo.
  #5 (permalink)  
Antiguo 28/12/2003, 21:56
 
Fecha de Ingreso: agosto-2003
Ubicación: Argentina
Mensajes: 71
Antigüedad: 20 años, 8 meses
Puntos: 0
Eso ya lo hice pero no pasa nada

Ey , register_global está en ON , ya había hecho eso de subir el phpinfo al servidor y ejecutarlo desde el explorador, me mostró todas la información vinculado a php que posee el servidor, pero igualmente no logro hacer que ese script grabe los mensajes, lo que dice esa aplicación aparte del codigo que ya puse es esto:

to fit your needs (some knowledge of PHP is needed for this).
You can also change the colors of the text by changing the values in the .PHP script also.
Upload the guestbook.swf, addentry.php and the entry.txt and your almost done.
NOTE you MUST change the CHMOD levels on the entry.txt file to 766 otherwise the .PHP file wont write to the text file and you will get an error.

Eso tb lo hago , osea de darle el permiso al .txt , lo pongo a 766 pero tampoco no pasa nada. No se porq el archivo addentry.php no escribe en el txt.
En el mismo directorio de mi servidor tengo otra aplicación php que es para enviar mails y me anda bien , pero esta aplicación que es un tipo foro no me anda, pero si lo pruebo en local anda bien como dije antes.
Cualquier cosa si alguien de ustedes tiene un servidor que soporte php, les pasaria la aplicación para que la prueben y ver si les anda.

Saludos
  #6 (permalink)  
Antiguo 29/12/2003, 04:02
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Si te sale el mensaje "Se requiere llenar con datos", es porque se cumple esta condicion:
Código PHP:
if (!isset($name) || !isset($email) || !isset($message) || empty($name) || empty($email) || empty($message)) {
print 
"&result=Fail";
print 
"&errorMsg=" urlencode("Se requiere llenar con datos.");
exit;

Es decir, porque no existen o estan vacios una de estas variables: $name, $email, $message. Como supongo que vienen de un formulario, por eso comentaba lo del register_globals, ya que parece que requieres que sea a ON. De todas formas, es recomendable que lo cambies para que funcione con register_globals a OFF, y uses los arrays superglobales $_POST o $_GET, dependiendo del metodo del formulario:
Código PHP:
if (!isset($_POST['name']) || !isset($_POST['email']) || !isset($_POST['message']) || empty($_POST['name']) || empty($_POST['email']) || empty($_POST['message'])) {
print 
"&result=Fail";
print 
"&errorMsg=" urlencode("Se requiere llenar con datos.");
exit;

De todas formas, creo que usas Flash como formulario (por el formato de la salida). Asegurate que los campos se llaman name, email y message, y que en la prueba que hagas todos tengan valor.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 29/12/2003, 21:28
 
Fecha de Ingreso: agosto-2003
Ubicación: Argentina
Mensajes: 71
Antigüedad: 20 años, 8 meses
Puntos: 0
lo voy a probar

Hola , si efectivamente es un mini foro hecho en flash y q usa php, el formulario tiene tres entradas de texto , name, email, comments.
Bueno voy a probar con eso de POST que me dijiste a ver si me anda, lo que veo en el phpinfo es q register_globals está a ON como ya dije, pero como haria por ejemplo si quiero pasarlo a OFF? porq el phpinfo me muestra solamente una página con todos los datos , pero ahora no se como se cambiarla.
Disculpen pero soy novato en PHP, estoy viendo y probando aplicaciones para empezar a aprender, igualmente tb estoy viendo todas las faqs pero como todo comienzo me resulta duro.
Saludos y voy a probar a ver q pasa.
  #8 (permalink)  
Antiguo 30/12/2003, 01:10
 
Fecha de Ingreso: agosto-2003
Ubicación: Argentina
Mensajes: 71
Antigüedad: 20 años, 8 meses
Puntos: 0
Pregunta Básica

Ey, de nuevo , me queda la duda..........
Cómo hago para cambiar el register_global a OFF en el servidor???????
porq con el phpinfo es solo informativo, pero si quiero cambiar el valor a OFF como lo hago? porq está en ON actualmente.
Otra cosa , al cambiar el valor a OFF tengo q cambiar $name y a cada variable ponerle POST? osea en todo el script donde aparezca la variable o en la 1er parte nomas....
bueno saludos


otra cosa, ya q estamos , alguien me puede dar info de donde conseguir un guestbook q tenga nombre, mail y mensaje nomas y lo muestre en pantalla un mensaje abajo de otro. O sino tb brindarme material de estudio para obviamente estudiarlo.

Agradezco sugerencias!! saludos gracias
  #9 (permalink)  
Antiguo 30/12/2003, 02:30
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Cita:
, el formulario tiene tres entradas de texto , name, email, comments
El script requiere que los campos se llamen name, email y message.

Y mira ini_set() (www.php.net/ini_set) para ver donde se pueden cambiar las directivas de PHP. De todas formas, puedes programar con los arrays superglobales ($_POST, $_GET, etc) aunque tengas register_globals a ON.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #10 (permalink)  
Antiguo 31/12/2003, 00:24
 
Fecha de Ingreso: agosto-2003
Ubicación: Argentina
Mensajes: 71
Antigüedad: 20 años, 8 meses
Puntos: 0
me habia equivocado en el post

hola, perdon pero me habia equivocado cuando dije aqui en un post, pero los campos estaban bien, era:
name; email,message , no era comments como puse en un post.
Igualmente voy a ver eso de las variables dejando la directiva a ON , pero entonces a cada variable por ejem $name en todo el script, le tendria q poner la supervariable global?
puede que quede asi el script?

<?
if (!isset($_POST['name']) || !isset($_POST['email']) || !isset($_POST['message']) || empty($_POST['name']) || empty($_POST['email']) || empty($_POST['message'])) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Se requiere llenar con datos.");
exit;
}

$email = strtolower($_POST['email']);

addentry($name, $email, $message);

function addentry($_POST['name'], $_POST['email'], $_POST['message']) {

$posted = strftime("%D %I:%M %p");

$message = stripslashes($_POST['message']);

$file = fopen('entry.txt', 'a+');

if (!$file) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Could not open entry.txt file. Change CHMOD levels to 766.");
exit;
}

fputs($file, "<font color=\"#000000\">Nombre:</font> $_POST['name']\n<font color=\"#000000\">Email:</font> <font color=\"#CCCCCC\">$_POST['email']</font><br>\n<font color=\"#000000\">Hora:</font> $posted\n<font color=\"#000000\">Mensaje:</font> $_POST['message']\n\n");
fclose($file);

// Send admin an email when new entry occurs
// mailAdmin($name, $email);
}

function mailAdmin($_POST['name'], $_POST['email']) {
$mailTo = "xsdsd <[email protected]>";
$mailFrom = "From: Libro de Visitas <[email protected]>";
$mailSubject = "Nuevo Mensaje Libro de Visitas";
$mailBody = "$name ($email) has just posted in your guestbook\n\nView it at http://www.sdo.com.ar";
mail($mailTo, $mailSubject, $mailBody, $mailFrom);
}

print "&result=okay";
exit;

?>

SALUDOS
__________________
<<Rodr-GO!!!!>>
  #11 (permalink)  
Antiguo 02/01/2004, 15:52
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
No debes poner el $_POST en la definicion de la funcion. Aqui seria al reves:
Código PHP:
 addentry($name$email$message);

function 
addentry($_POST['name'], $_POST['email'], $_POST['message']) { 
Lo correcto es:
Código PHP:
 addentry($_POST['name'], $_POST['email'], $_POST['message']);

function 
addentry($name$email$message) { 
Y dentro de la funcion usas $name, $email y $message.

Lo mismo en la otra funcion.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #12 (permalink)  
Antiguo 13/01/2004, 14:22
 
Fecha de Ingreso: agosto-2003
Ubicación: Argentina
Mensajes: 71
Antigüedad: 20 años, 8 meses
Puntos: 0
Lo probé pero igual no me anda

Lo probé asi pero igual no me anda, me sigue apareciendo que se requiere llenar con datos, lo q pongo es asi :


<?

if (!isset($_POST['name']) || !isset($_POST['email']) || !isset($_POST['message']) || empty($_POST['name']) || empty($_POST['email']) || empty($_POST['message'])) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Se requiere llenar con datos.");
exit;
}

$email = strtolower($email);

addentry($_POST['name'], $_POST['email'], $_POST['message']);

function addentry($name, $email, $message) {

$posted = strftime("%D %I:%M %p");

$message = stripslashes($message);

$file = fopen('entry.txt', 'a+');

if (!$file) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Could not open entry.txt file. Change CHMOD levels to 766.");
exit;
}

fputs($file, "<font color=\"#000000\">Nombre:</font> $name\n<font color=\"#000000\">Email:</font> <font color=\"#CCCCCC\">$email</font><br>\n<font color=\"#000000\">Hora:</font> $posted\n<font color=\"#000000\">Mensaje:</font> $message\n\n");
fclose($file);

// Send admin an email when new entry occurs
// mailAdmin($_POST['name'], $_POST['email']);
}

function mailAdmin($name, $email) {
$mailTo = "weSCO <[email protected]>";
$mailFrom = "From: Libro de Visitas <[email protected]>";
$mailSubject = "Nuevo Mensaje Libro de Visitas";
$mailBody = "$name ($email) has just posted in your guestbook\n\nView it at http://www.wesco.com.ar";
mail($mailTo, $mailSubject, $mailBody, $mailFrom);
}

print "&result=okay";
exit;

?>

que puede ser? porq no anda, si yo uso las variables superglobales teniendo el global_register en ON.

ESPERO AYUDA, PORQ LO PROBE MIL VECES Y NO ME ANDA!!

SALUDOS
__________________
<<Rodr-GO!!!!>>
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 20:24.