Foros del Web » Programando para Internet » PHP »

No envia ni el mail ni guarda la foto en el servidor!!

Estas en el tema de No envia ni el mail ni guarda la foto en el servidor!! en el foro de PHP en Foros del Web. Hola buenas noche!, pues les comento, desde hace ya casi 2 o 3 semanas he tenido problemas con una seccion, no estoy familiarizado en nada ...
  #1 (permalink)  
Antiguo 15/05/2006, 05:24
 
Fecha de Ingreso: mayo-2006
Mensajes: 9
Antigüedad: 11 años, 7 meses
Puntos: 0
Exclamación No envia ni el mail ni guarda la foto en el servidor!!

Hola buenas noche!, pues les comento, desde hace ya casi 2 o 3 semanas he tenido problemas con una seccion, no estoy familiarizado en nada con php, pero me pasaron un codigo, que sirve para enviar un mail con los datos de un formulario, y guardar 3 archivos de imagen en el servidor, ya le he dado permisos al archivo php CHMOD 0777, y no me sirve, me sale error en la linea 80 del archivo php que es la linea de mail("rogelio68..., y pues queria que me resolvieran por favor el codigo, si yo supiera php y sabria que esta mal no pediria ayuda, pero por algo estoy aqui posteando, encerio se los agradeceria muchisimo, pondre un link en mi pagina referente a esta web cuando la acabe, bueno, les dejo el archivo HTML (el formulario) y el archivo PHP (la accion a guardar los archivos en el servidor y enviar el correo, tambien revisar si los datos vienen en escritos en los campos del formulario).

HTML
Código:
<html>
<head>
<body bgcolor=black>

<STYLE type="text/css">
<!--
BODY {
scrollbar-face-color: #cc0000;
scrollbar-highlight-color: #FFFFFF;
scrollbar-3dlight-color: #000000;
scrollbar-darkshadow-color: #ffffff;
scrollbar-shadow-color: #000000;
scrollbar-arrow-color: #FFFFFF;
scrollbar-track-color: #000000;
}
-->
</STYLE>

<font face="verdana, arial, sans-serif" size="2" color="#AAAAAA">
En esta web tambien te dejamos que publiques fotos de tu auto, y su sonido, asi como tambien colocar tus datos dentro de esta web, saludos!
</font>

<form action="envia_sound.php" target="contenido" method="post"> 
<table width="100%" border="0" class="norma"> 
<!--DWLayoutTable--> 

<tr> 
<td width="33%"><div align="right"><font color="#AAAAAA" size="2" face="Verdana, Arial, Helvetica, sans-serif">Nombre</font></div></td> 
<td width="4%"><font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif">:</font></td> 
<td width="222"><font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
<input name="nom" type="text" id="nom" size="35"> 
</font></td> 
</tr>

<tr> 
<td width="33%"><div align="right"><font color="#AAAAAA" size="2" face="Verdana, Arial, Helvetica, sans-serif">Localizacion</font></div></td> 
<td width="4%"><font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif">:</font></td> 
<td width="222"><font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
<input name="localizacion" type="text" id="nom" size="35"> 
</font></td> 
</tr>

<tr> 
<td height="15"><div align="right"></div></td> 
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">&nbsp;</font></td> 
</tr> 

<tr> 
  <td>
    <div align="right">
      <font color="#AAAAAA" size="2" face="Verdana, Arial, Helvetica, sans-serif">
      Foto 1
      </font>
    </div>
  </td> 
  <td>
  <font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif">:</font>
  </td> 
  <td>
    <font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
    <input name="foto1" type="file" size="35" id="foto1">
    </font>
  </td>
</tr>  

<tr> 
  <td>
    <div align="right">
      <font color="#AAAAAA" size="2" face="Verdana, Arial, Helvetica, sans-serif">
      Foto 2
      </font>
    </div>
  </td> 
  <td>
  <font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif">:</font>
  </td> 
  <td>
    <font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
    <input name="foto2" type="file" size="35" id="foto2">
    </font>
  </td>
</tr>  

<tr> 
  <td>
    <div align="right">
      <font color="#AAAAAA" size="2" face="Verdana, Arial, Helvetica, sans-serif">
      Foto 3
      </font>
    </div>
  </td> 
  <td>
  <font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif">:</font>
  </td> 
  <td>
    <font color="#ffff00" size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
    <input name="foto3" type="file" size="35" id="foto3">
    </font>
  </td>
</tr>  

<tr> 
<td>&nbsp;</td> 
<td>&nbsp;</td> 
<td><br><input type="reset" name="Submit" value="Restablecer"> <input name="foto1" type="submit" id="foto1" value="Enviar">
</td> 
</tr> 
</table> 
</form>
PHP
Código:
<html>
<head>
<body bgcolor=black>
<font face="Verdana" size="2" color="#AAAAAA">

<?

// Verifico si vienen los valores 

$ingreso_todo = "S";

// Subir el archivo

if($foto1) {
  if (is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name'])) {
    if($HTTP_POST_FILES['archivo']['size'] < 100000) {
      if($HTTP_POST_FILES['archivo']['type']=="image/gif") { 
          copy($HTTP_POST_FILES['archivo']['tmp_name'], $HTTP_POST_FILES['archivo']['name']);
          $subio = true;
    }
  }
}

  if($subio) {
     echo "El archivo subio con exito";
  } else {
     echo "El archivo no cumple con las reglas establecidas"; 
  }
  die();
}

if($foto2) {
  if (is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name'])) {
    if($HTTP_POST_FILES['archivo']['size'] < 100000) {
      if($HTTP_POST_FILES['archivo']['type']=="image/gif") { 
          copy($HTTP_POST_FILES['archivo']['tmp_name'], $HTTP_POST_FILES['archivo']['name']);
          $subio = true;
    }
  }
}

  if($subio) {
     echo "El archivo subio con exito";
  } else {
     echo "El archivo no cumple con las reglas establecidas"; 
  }
  die();
}

if($foto3) {
  if (is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name'])) {
    if($HTTP_POST_FILES['archivo']['size'] < 100000) {
      if($HTTP_POST_FILES['archivo']['type']=="image/gif") { 
          copy($HTTP_POST_FILES['archivo']['tmp_name'], $HTTP_POST_FILES['archivo']['name']);
          $subio = true;
    }
  }
}

  if($subio) {
     echo "El archivo subio con exito";
  } else {
     echo "El archivo no cumple con las reglas establecidas"; 
  }
  die();
}

if (empty($_POST["$nom"])) { 
  echo "No ingreso Nombre<br>";
  $ingreso_todo = "N";
}

if (empty($_POST["$localizacion"])) { 
  echo "No ingreso Localizacion<br>";
  $ingreso_todo = "N";
} 

$mail="[email protected]"

if ($ingreso_todo == "S") { 
  $Cuerpo_mensaje = "De: Envia tu Sonido"." nombre: ".$nom.""." Localizacion: ".$localizacion."; 
  mail($mail, $nom, $Cuerpo_mensaje);
  echo "Gracias por mandarnos la foto de tu sonido, tu foto y tus datos seran publicados en la pagina, saludos!"; 
} 
else { 
  echo("Vuelva atrás e intentelo nuevamente"); 
} 

?> 

</body> 
</html>
De antemano gracias! y espero poder recibir de su ayuda, diganme porfavor como queria el codigo, saludos!
  #2 (permalink)  
Antiguo 15/05/2006, 08:49
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 14 años, 11 meses
Puntos: 8
cambia

<form action="envia_sound.php" target="contenido" method="post">

por
<form action="envia_sound.php" target="contenido" method="post" enctype="multipart/form-data">
  #3 (permalink)  
Antiguo 15/05/2006, 11:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Y no uses copy() .. usa "move_uploaded_file()".

Tampoco deberías usar $HTTP_POST_FILES .. usa en su defecto $_FILES (al igual que ya usas los "arrays superglobales" en $_POST para otras cosas .. usalos para todo!!)

Te recomiendo leer la documentación de "Upload de archivos" con PHP:
http://www.php.net/manual/es/features.file-upload.php

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 15/05/2006, 20:11
 
Fecha de Ingreso: mayo-2006
Mensajes: 9
Antigüedad: 11 años, 7 meses
Puntos: 0
pues... bueno, ahora me marca: el archivo no cumple con las reglas establecidas, cuando intento enviar arhivos menores de 30 kbps de imagen, a que se debe ? que esta mal en el codigo?
  #5 (permalink)  
Antiguo 16/05/2006, 07:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por MartinSkate
pues... bueno, ahora me marca: el archivo no cumple con las reglas establecidas, cuando intento enviar arhivos menores de 30 kbps de imagen, a que se debe ? que esta mal en el codigo?
No siempre la solución al problema está del lado del "código" .. El tema de "subir" archivos al servidor influye enormemente la configuración de tu servidor .. tanto del HTTP: (Apache o el que uses) como de PHP ..

No veo más limitante en tu código que:
if($HTTP_POST_FILES['archivo']['size'] < 100000) {

Ahí dices "archivos menores a 100000 bytes" .. Siendo: 100000 bytes / 1034 bytes = 97 y tantos Kbytes. (que no "Kbps" eso sería Kilo bits por segundo ..). Así que tus "30 ..." ya estan por debajo de esa restricción.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 18/05/2006, 09:51
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 15 años, 10 meses
Puntos: 0
Buenas. Yo tengo un codigo php con la funcio mail() y tp me envia. Creo que mi server me deja enviar pero como tb soy nuevo en eso no estoy seguro del todo.
Si me pudieran pegar una ojeada a la info del server... http://basquetpetra.awardspace.com/infoserver.php
El código php que uso es:
Cita:
<?php
if($_POST['enviar']){
mail("[email protected]","Contacte des de la Web de Bàsquet Petra",$_POST['comment']);
echo "<p><img src='images/tick.gif'>El teu missatge ha arribat correctament el webmaster.<br>Gràcies</p>";
if (!mail){
echo "error";
exit();
}
else{
// aqui hay todo el formulario
}
?>
Gracias
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 06:38.