Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/09/2009, 18:12
MartinRP
 
Fecha de Ingreso: febrero-2008
Mensajes: 8
Antigüedad: 16 años, 2 meses
Puntos: 0
Como validar un checkbox, me esta volviendo loco!!

Hola amigos, recurro a este foro despues de 3 dias de renegar maaaaaaaaaaaaal... estoy dano mis primeros pasos en PHP, en general en programacion web ya que siempre use editores, mi problema es el siguiente (en realidad son dos pero voy a hacer dos post). Tengo un formulario que me permite mandar un mail usando php, usando todos los campos posibles como CC y CCO y direccion de respuesta, pero me ha pasado que si estos datos los dejan en blanco el mail no llega, entonces se me ocurrio poner un checkbox para tildarlo y que se activen las entradas de texto correspondiente, hasta ahi barbaro, con el evebto onclic logro que se habiliten o no, el problema esta cuando hago el post, el action llama a un archivo que lo llame codigo.php que es el siguiente:

<?php
$nombre=$_POST['nombre'];
$email=$_POST['email'];
$destinatario=$_POST['destinatario'];
$asunto=$_POST['asunto'];
$mensaje=$_POST['mensaje'];

$elemento = document.getElementById('check');


//para el envio en formato HTML
$headers = "MIME-Version: 10\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

//dirección del remitente
$headers .= "From: " . $nombre . "<". $email . ">". "\r\n";

if ($elemento.checked) {
//dirección de respuesta, si queremos que sea distinta que la del remitente
$headers .= "Reply-To: " . $nombre . "<" . $_POST['respuesta'] . ">". "\r\n";

//ruta del mensaje desde origen a destino
$headers .= "Return-path: " . $_POST['respuesta'] . "\r\n";

//direcciones que recibián copia
$headers .= "Cc: " . $_POST['cc'] . "\r\n";

//direcciones que recibirán copia oculta
$headers .= "Bcc: " . $_POST['cco'] . "\r\n";

}

mail("$destinatario","$asunto","$mensaje","$header s\r\n");

?>

<?php header("Location:mensaje-enviado.php");exit; ?>

Mi idea es que los headers se carguen solo si es true el checked, pero: si uso una variable para leer el check como esta aqui me dice que no se conoce el comando getElementById, si le saco el $ a elemento me dice Unexpected "=" y si voy tocando cosas y variando, logro que no de error pero siempre hace como si estuviera checked, osea que no lo esta tomando.... por favor, se que es una pavada pero no se como validar y que cargue los headers solo si esta en checked, desde ya gracias y MIL DISCULPAS POR LO LARGO!!!

Martin