Foros del Web » Programando para Internet » PHP »

Problema: "no ocurre nada"

Estas en el tema de Problema: "no ocurre nada" en el foro de PHP en Foros del Web. Hola estoy creando un formulario con código php y cuando procedo a introducir el nombre y el email este no advierte de que es incorrecto, ...
  #1 (permalink)  
Antiguo 26/02/2011, 18:07
 
Fecha de Ingreso: enero-2011
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Problema: "no ocurre nada"

Hola estoy creando un formulario con código php y cuando procedo a introducir el nombre y el email este no advierte de que es incorrecto, tampoco funciona el link para el botón cuya función es la de descargar un archivo.

Aquí les dejo el código.

Código:
<?php
	if (!$primeravez)
	{
		if (empty($_POST["name"]))
			echo "<p class='error'>Falta rellenar el campo Nombre</p>";
		if (empty($_POST["email"]))
			echo "<p class='error'>Falta rellenar el campo Email</p>";
		elseif (!eregi("^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$", $_POST["email"]))
			echo "<p class='error'>Email no válido</p>";
	}		
   ?>
  
  <form id="form1" name="form1" method="post" action="conexion.php">
    <table width="100%" border="0">
      <tr>
        <td>Name:</td>
        <td colspan="2"><label for="name"></label>
        <input type="text" name="name" id="name" value="<?php echo htmlspecialchars($_POST['name']); ?>"></td>
      </tr>
      <tr>
        <td>Email</td>
        <td colspan="2"><label for="email"></label>
        <input type="text" name="email" id="email" value="<?php echo htmlspecialchars($_POST['email']); ?>"></td>
      </tr>
      <tr>
        <td colspan="3"><input type="submit" name="Enviar" id="Enviar" value="Descargar" href="http://lcoalhost/public_html/Album sunshine.rar"/></td>
      </tr>
    </table>
  </form>
  #2 (permalink)  
Antiguo 26/02/2011, 18:13
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema: "no ocurre nada"

amigo tienes un action en el formulario por lo que los datos no te quedan en la misma pagina que es donde tienes el proceso del formulario qe estas enviando
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 26/02/2011, 18:48
 
Fecha de Ingreso: enero-2011
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema: "no ocurre nada"

Como debería de hacer para que los datos introducidos en el capo de texto y email surgan efecto?
  #4 (permalink)  
Antiguo 26/02/2011, 18:57
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema: "no ocurre nada"

pues tienes dos opciones o dejas el action vacio de manera que te envie el formulario a la misma pagina donde harias todo lo que es la validacion que tienes en tu pagina.
La otra y que es la que me gusta mas a mi (opinion personal) es que hagas la validacion y el proceso de los datos en el archivo conexion.php que es a donde envias los datos de tu formularoio segun lo que nos estas mostrando, pero ya es decision tuya saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #5 (permalink)  
Antiguo 26/02/2011, 19:19
 
Fecha de Ingreso: enero-2011
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema: "no ocurre nada"

Si te entendí pero el action apunta a la conexión de la BD mysql y en esta pagina "conexion.php tengo el siguiente codigo:

Código:
<?php


$link = mysql_connect ("localhost","archenemi","1234");

if (!$link)

die("Error en la conexion con MySQL");

mysql_select_db (archenemi_pw,$link);

$resultado=mysql_query("INSERT INTO usuarios(name,email)

VALUES ('{$_POST['name']}','{$_POST['email']}'  )",$link);

header("Location:descarga.php");

mysql_close ($link);

?>
  #6 (permalink)  
Antiguo 26/02/2011, 19:24
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema: "no ocurre nada"

y no te hace la insercion en la base de datos??
te da algun error o algo parecido???
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #7 (permalink)  
Antiguo 26/02/2011, 19:29
 
Fecha de Ingreso: enero-2011
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema: "no ocurre nada"

No, los datos entran satisfactoriamente a la BS pero el problema al que me refiero es que el usuario puedo hacer click en el botón descargar y este aceptarlo en la BS sin necesidad de introducir correctamente los datos nombre y email para los cuales yo les di la orden.

El botón Descarga tampoco da la orden de descargar el archivo, osea no aparece la ventana de descarga.
  #8 (permalink)  
Antiguo 26/02/2011, 19:36
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema: "no ocurre nada"

pues tienes que hacer una validacion de datos cosa que no tienes en tu pagina de conexion sencillamente lo que colocabas aca
Cita:
if (empty($_POST["name"]))
echo "<p class='error'>Falta rellenar el campo Nombre</p>";
if (empty($_POST["email"]))
echo "<p class='error'>Falta rellenar el campo Email</p>";
elseif (!eregi("^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$", $_POST["email"]))
echo "<p class='error'>Email no válido</p>";
de tal manera que te haga la validacion de no hacerlo has una redireccion al formulario en vez de imprimirlo directamente en conexion.php y mandas un parametro de error bien sea en la url o en una variable de session ejemplo
Código PHP:
Ver original
  1. if (empty($_POST["email"])){
  2.     header("location:fomulario.php?errorMail=si");
  3.     exit;
  4. }

y en formulario verificas si existe este error
Código PHP:
Ver original
  1. if(isset(errorMail) && errorMail == "si"){
  2.    echo "debes de llenar el email";
  3. }

espero que te sirva de guia, por cierto la funcion eregi esta obsoleta se usa preg_match en su sustitucion, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #9 (permalink)  
Antiguo 26/02/2011, 20:27
 
Fecha de Ingreso: enero-2011
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema: "no ocurre nada"

Perdona pero no te entendí bien, el segundo código que pegastes debo introducirlo en la pagina conexion.php? y el tercero?
  #10 (permalink)  
Antiguo 26/02/2011, 20:50
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema: "no ocurre nada"

pues el ultimo que coloque es la vista de la validacion al no haber estado lleno en la validacion te envia un parametro por la url que indica el error, eso lo vas a colocar en tu formulario del cual yo no se la ruta por eso en la redireccion le colocaba formulario.php es decir el ultimo codigo va en tu formulario, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #11 (permalink)  
Antiguo 27/02/2011, 07:52
 
Fecha de Ingreso: enero-2011
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema: "no ocurre nada"

Muchas gracias me ha servido, una ultima consulta.

Para que aparezca el recuadro de la descarga Abrir, Guardar, Cancelar en el servidor del boton que creo en Dreamweaver como hago porque he puesto:

Código:
<td colspan="3"><input type="submit" name="Enviar" id="Enviar" value="Descargar" action="http://www.webcindario.com/Album sunshine.rar"/></td>
pero no ocurre nada.
  #12 (permalink)  
Antiguo 27/02/2011, 10:11
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problema: "no ocurre nada"

el submit te envia un formuario por lo que lo mas seguro es que no te este haciendo lo que deseas, lo que pudieras hacer como tienes una direccion directa al archivo es colocarla en un input del type button o colocar un vinculo directo
Código HTML:
Ver original
  1. <input type="button" value="descargar" onclick="window.location='archivo.rar'">
  2. <a href="archivo.rar">descargar</a>

de tal manera que lleguen a la ruta del archivo y lo puedas descargar, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #13 (permalink)  
Antiguo 27/02/2011, 13:15
 
Fecha de Ingreso: enero-2011
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema: "no ocurre nada"

Ok thanks por la asistencia

Etiquetas: Ninguno
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 00:33.