Foros del Web » Programando para Internet » PHP »

formualrio html a php

Estas en el tema de formualrio html a php en el foro de PHP en Foros del Web. Haber si alguien me puede ayudar con esto, tengo un codigo en html y javascript pero quisiera ponerlo en php.. Si alguien me lo puediera ...
  #1 (permalink)  
Antiguo 16/06/2010, 20:53
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
formualrio html a php

Haber si alguien me puede ayudar con esto, tengo un codigo en html y javascript pero quisiera ponerlo en php.. Si alguien me lo puediera transformar? pk no tengo ni idea.. Disculpen.. Gracias!

Nota: El codigo funciona perfectamente por lo que no quiero modificarle las funciones, solo transformarlo a php porque lo necesito.

<html>
<head>
<link href="../style2.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
function setFocus(aField) {
document.forms[0][aField].focus();
}

function isAnEmailAddress(aTextField) {

if (document.forms[0][aTextField].value.length<5) {
return false;
}
else if (document.forms[0][aTextField].value.indexOf("@") < 1) {
return false;
}
else if (document.forms[0][aTextField].value.length -
document.forms[0][aTextField].value.indexOf("@") < 4) {
return false;
}
else { return true; }
}

function isEmpty(aTextField) {
if ((document.forms[0][aTextField].value.length==0) ||
(document.forms[0][aTextField].value==null)) {
return true;
}
else { return false; }
}
function validate() {

if (isEmpty("username")) {
alert("Debes ingresar tu nombre de usuario");
setFocus("username");
return false;
}
if (isEmpty("password")) {
alert("Debes ingresar tu contraseña");
setFocus("password");
return false;
}
if (!isAnEmailAddress("email")) {
alert("El email ingresado no es válido");
setFocus("email");
return false;
}
return true;

}
</script>

<script language="Javascript">
document.oncontextmenu = function(){return false}
</script>
</head>

<body bgcolor="#EEEEEE" style="background-image: url(''); background-color: #EEEEEE">

<b>REGISTRAR</b><br>
<form action="../register.php" method="post" onSubmit="return validate()">
<p>Usuario: *<br />
<input type="text" name="username" class="register">
<br>
Contraseña: *<br />
<input type="password" name="password" class="register">
<br>
Nombre:<br />
<input type="text" name="name1" class="register">
<br>
Primer apellido:<br />
<input type="text" name="name2" class="register">
<br>
Email: *<br />
<input type="text" name="email" class="register">
<br>
Web: (inserta http://)<br />
<input type="text" name="website" class="register">
<br>
<input type="submit" value=" OK " class="login-button">
</p>
</form>
Los campos marcados con (*) son obligatorios.
</body>
</html>
  #2 (permalink)  
Antiguo 16/06/2010, 21:10
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: formualrio html a php

Lo basico de lo basico:
Crea un archivo php y metele este codigo
Cuando lo ejcutes escribe algo en el campo de texto y optime el boton...

Código PHP:

<form action="" method="POST">
<input type="text" name="username"><br />
<input type="submit" value="OK"><br />
</form>

<?php

if(isset($_POST['username'])){
echo 
$_POST['username'];
}

//si observas te daras cuentas de esto $_POST['username'] => username
//a esto $_POST[''] => debes darle el nombre del campo que quiere mostrar

?>
-no lo probe, creo que anda-
  #3 (permalink)  
Antiguo 16/06/2010, 22:39
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

Código HTML:
Ver original
  1. <form action="../register.php" method="post" onSubmit="return validate()">
  2. <p>Usuario: *<br />
  3. <input type="text" name="username" class="register">
  4. <br>
  5. Contraseña: *<br />
  6. <input type="password" name="password" class="register">
  7. <br>
  8. Nombre:<br />
  9. <input type="text" name="name1" class="register">
  10. <br>
  11. Primer apellido:<br />
  12. <input type="text" name="name2" class="register">
  13. <br>
  14. Email: *<br />
  15. <input type="text" name="email" class="register">
  16. <br>
  17. Web: (inserta http://)<br />
  18. <input type="text" name="website" class="register">
  19. <br>
  20. <input type="submit" value=" OK " class="login-button">
  21. </p>
  22. </form>
Código PHP:
Ver original
  1. $name = $_POST[name1];
  2. // vemos si el campo name1 es solo texto
  3. foreach ($name as $element) {
  4.     if (is_numeric($element)) {
  5. echo "no se aceptan numeros en el nombre";
  6. }
  7. }
  8. // si estos 3 campos no estan completos
  9. if(!isset($_POST['username']) && !isset($_POST['password']) && !isset($_POST['email'])){
  10. echo "no escribiste nada en los campos requeridos";
  11. }
  12. // si username y password no son mayores a 6 caracteres
  13. if(strlen($_POST['username']) < 6 && strlen($_POST['password']) < 6)
  14. {
  15. echo "los campos tienen menos de 6 caracteres";
  16. }

Última edición por apuu; 16/06/2010 a las 22:50
  #4 (permalink)  
Antiguo 17/06/2010, 07:35
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

voy a ver que tal, muchisimas gracias

Edito: el codigo parece que etsa bien, pero no se donde tengo que poner cada cosa, la parte en PHP la pongo en la misma pagina del html? o tengo que ponerlo en la pagina a donde me envia el formulario?

Última edición por xaviarg; 17/06/2010 a las 08:00
  #5 (permalink)  
Antiguo 17/06/2010, 08:15
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

Bueno, he puesto el <?php ?> debajo del html pero el problema es que, aunque el php reconoce cuando faltan caracteres o datos en el formulario, me sigue dejando registrarme aunque me falten datos... Debe tener algo que ver que el formulario me envie a register.php (otro archivo)
  #6 (permalink)  
Antiguo 17/06/2010, 08:38
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

tenes que poner en action el mismo nombre del php en que esta el form y abajo de ese code el insert
  #7 (permalink)  
Antiguo 17/06/2010, 09:06
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

lo puse en el mismo archivo pero no em funciona, algo debo estar ahciendo mal..

<html>
<head>
<link href="../style2.css" rel="stylesheet" type="text/css" />

<script language="Javascript">
document.oncontextmenu = function(){return false}
</script>
</head>
<body bgcolor="#EEEEEE" style="background-image: url(''); background-color: #EEEEEE">

<html>
<head>
<link href="../style2.css" rel="stylesheet" type="text/css" />

<script language="Javascript">
document.oncontextmenu = function(){return false}
</script>
</head>

<body bgcolor="#EEEEEE" style="background-image: url(''); background-color: #EEEEEE">

<b>REGISTRAR</b><br>
<form action="register.php" method="post" onSubmit="return validate()">
<p>Usuario: *<br />
<input type="text" name="username" class="register">
<br>
Contraseña: *<br />
<input type="password" name="password" class="register">
<br>
Nombre:<br />
<input type="text" name="name1" class="register">
<br>
Primer apellido:<br />
<input type="text" name="name2" class="register">
<br>
Email: *<br />
<input type="text" name="email" class="register">
<br>
Web: (inserta http://)<br />
<input type="text" name="website" class="register">
<br>
<input type="submit" value=" OK " class="login-button">
</p>
</form>
Los campos marcados con (*) son obligatorios.
</body>
</html>
<br><br>
<?php

include("../config.php");


$name = $_POST[name1];
// vemos si el campo name1 es solo texto
foreach ($name as $element) {
if (is_numeric($element)) {
echo "no se aceptan numeros en el nombre<br>";
}
}
// si estos 3 campos no estan completos
if(!isset($_POST['username']) && !isset($_POST['password']) && !isset($_POST['email'])){
echo "no escribiste nada en los campos requeridos<br>";
}
// si username y password no son mayores a 6 caracteres
if(strlen($_POST['username']) < 6 && strlen($_POST['password']) < 6)
{
echo "los campos tienen menos de 6 caracteres<br>";
}



// connect to the mysql server
$link = mysql_connect($server, $db_user, $db_pass)
or die ("Could not connect to mysql because ".mysql_error());

// select the database
mysql_select_db($database)
or die ("Could not select database because ".mysql_error());

// check if the username is taken
$check = "select id from $table where username = '".$_POST['username']."';";
$qry = mysql_query($check)
or die ("Could not match data because ".mysql_error());
$num_rows = mysql_num_rows($qry);
if ($num_rows != 0) {
echo "<center>
<br>$p43<br><br>
<a target=_top href=registrar.php class=link-login>$p44</a></center>
";
exit;
} else {

// insert the data
$ip = $_SERVER['REMOTE_ADDR'];
$insert = mysql_query("insert into $table values ('NULL', '".$_POST['username']."', '".$_POST['password']."', '".$_POST['name1']."', '".$_POST['name2']."', '".$_POST['email']."', '".$_POST['website']."', 'img/avatar.jpg', '".$ip."')")
or die("Could not insert data because ".mysql_error());

// print a success message
echo "
<center><br>$p45<br><br>
<a target=_top href=index.php class=link-login><b>$p46</b></a></center>
";
}



?>

</body>
</html>



El problema que tengoe s que me sigue dejando registrar aunque no tenga todos los datos (usuario, clave y email) puestos...
  #8 (permalink)  
Antiguo 17/06/2010, 09:11
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

Código PHP:
Ver original
  1. $name = $_POST[name1];
  2. // vemos si el campo name1 es solo texto
  3. foreach ($name as $element) {
  4. if (is_numeric($element)) {
  5. echo "no se aceptan numeros en el nombre<br>";
  6. }
  7. }
  8. // si estos 3 campos no estan completos
  9. if(!isset($_POST['username']) && !isset($_POST['password']) && !isset($_POST['email'])){
  10. echo "no escribiste nada en los campos requeridos<br>";
  11. }else{
  12. // si username y password no son mayores a 6 caracteres
  13. if(strlen($_POST['username']) < 6 && strlen($_POST['password']) < 6)
  14. {
  15. echo "los campos tienen menos de 6 caracteres<br>";
  16. }else{
  17.  
  18.  
  19. // connect to the mysql server
  20. $link = mysql_connect($server, $db_user, $db_pass)
  21. or die ("Could not connect to mysql because ".mysql_error());
  22.  
  23. // select the database
  24. mysql_select_db($database)
  25. or die ("Could not select database because ".mysql_error());
  26.  
  27. // check if the username is taken
  28. $check = "select id from $table where username = '".$_POST['username']."';";
  29. $qry = mysql_query($check)
  30. or die ("Could not match data because ".mysql_error());
  31. $num_rows = mysql_num_rows($qry);
  32. if ($num_rows != 0) {
  33. echo "<center>
  34. <br>$p43<br><br>
  35. <a target=_top href=registrar.php class=link-login>$p44</a></center>
  36. ";
  37. } else {
  38.  
  39. // insert the data
  40. $ip = $_SERVER['REMOTE_ADDR'];
  41. $insert = mysql_query("insert into $table values ('NULL', '".$_POST['username']."', '".$_POST['password']."', '".$_POST['name1']."', '".$_POST['name2']."', '".$_POST['email']."', '".$_POST['website']."', 'img/avatar.jpg', '".$ip."')")
  42. or die("Could not insert data because ".mysql_error());
  43.  
  44. // print a success message
  45. echo "
  46. <center><br>$p45<br><br>
  47. <a target=_top href=index.php class=link-login><b>$p46</b></a></center>
  48. ";
  49. }
  50. }
  51. }

Última edición por apuu; 17/06/2010 a las 09:33
  #9 (permalink)  
Antiguo 17/06/2010, 09:32
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

ya creo que si va... Muchas gracias!

Edito: los campos en blanco (de usuario, password y email) no me los detecta... Solo detecta cuando hay menos de 6 caracteres en el campo usuario y password...

Última edición por xaviarg; 17/06/2010 a las 09:58
  #10 (permalink)  
Antiguo 17/06/2010, 09:34
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

ahora fijate ahi edite
  #11 (permalink)  
Antiguo 17/06/2010, 10:13
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

no funciona... sigue detectando que los campos tienen menos de 6 caracteres pero no que estan en blanco, entonces si pongo el usuario y no pongo la contraseña o el email si me deja registrarme :S
  #12 (permalink)  
Antiguo 17/06/2010, 10:17
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

proba en ves de isset con empty
  #13 (permalink)  
Antiguo 17/06/2010, 10:23
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

Cita:
Iniciado por apuu Ver Mensaje
proba en ves de isset con empty
nada...
  #14 (permalink)  
Antiguo 17/06/2010, 10:34
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

entonces hacelo de la forma primitiva

Código PHP:
if($_POST['username']  = "" && $_POST['password']  = "" && $_POST['email'] = ""){ 
  #15 (permalink)  
Antiguo 17/06/2010, 10:49
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

Cita:
Iniciado por apuu Ver Mensaje
entonces hacelo de la forma primitiva

Código PHP:
if($_POST['username']  = "" && $_POST['password']  = "" && $_POST['email'] = ""){ 
Ahora directamente no me deja registrar.. jaja, bueno , mejor lo dejo en html como estaba antes...

Sabes como puedo hacer para meter esto en un html?



esto estaria en otro archivo llamado text.php
<? $h= "hola"; ?>

esto en el formulario html
<? echo $h; ?>
  #16 (permalink)  
Antiguo 17/06/2010, 10:54
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

<p><? echo $h; ?></p>
  #17 (permalink)  
Antiguo 17/06/2010, 10:56
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

Cita:
Iniciado por apuu Ver Mensaje
<p><? echo $h; ?></p>
me refiero a una página que acaba en .html
  #18 (permalink)  
Antiguo 17/06/2010, 10:57
 
Fecha de Ingreso: abril-2010
Mensajes: 89
Antigüedad: 14 años
Puntos: 1
Respuesta: formualrio html a php

no se puede a menos que hagas un iframe pero no
  #19 (permalink)  
Antiguo 17/06/2010, 10:59
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: formualrio html a php

Bueno, muchas gracias por tu tiempo y tu ayuda.. Un saludo!!

Etiquetas: html
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 08:17.