Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] PHP OO imprimir echo con formulario html desde php...

Estas en el tema de imprimir echo con formulario html desde php... en el foro de PHP en Foros del Web. Hola personas, Tengo una duda y requiero de la ayuda de los buenos programadores cómo los que abundan en Foros del Web mi caso es ...
  #1 (permalink)  
Antiguo 20/01/2012, 11:50
 
Fecha de Ingreso: enero-2012
Ubicación: En una casa
Mensajes: 72
Antigüedad: 12 años, 3 meses
Puntos: 2
Pregunta imprimir echo con formulario html desde php...

Hola personas,


Tengo una duda y requiero de la ayuda de los buenos programadores cómo los que abundan en Foros del Web mi caso es el siguiente.

Tengo:
index.php
ingresar.php

Estos son los importantes por ahora... En el index tengo 2 formularios escondidos mediante CSS y jQuery... uno es el de registro y el otro es el de ingreso; ambos me muestran el respectivo mensaje cuándo hay errores de datos (Ejemplo: "datos incorrectos, datos incompletos, nick mal, pass mal, ya existe el nick... etc"), ahora lo que requiero y si alguien me puede explicar cómo hacerlo es lo siguiente, cuándo me aparezca el mensaje necesito que me reaparezca el formulario. un ejemplo cuándo el usuario se va a identificar e ingresa un campo malo por ejemplo pass mal o nick mal, me muestre también el formulario de ingreso.

Acá código:

index.php

Código HTML:
Ver original
  1. <?
  2. session_start();
  3. require('conexion.php');
  4. ?>
  5. <!DOCTYPE html >
  6.  
  7. <title>::Formato de log in::</title>
  8. <iframe src="ingresar.php" style="display: none;" width="1242" height="80" id="ingres" name="ingres">ingreso</iframe>
  9. <iframe src="insert_user.php" style="display: none;" width="1242" height="80" id="reg" name="reg">registro</iframe>
  10. <script language='javascript' src='jquery-1.7.1.js'></script>
  11. <script language='javascript' src='scripts.js'></script>
  12. <link rel='stylesheet' media='all' type='text/CSS' href='styls.css'/>
  13. </head>
  14.  
  15.  
  16. <div class="imgrr" onLoad="movimiento">
  17. <img src="http://www.forosdelweb.com/f18/Proyects/librerias/Imágenes/nav_logo_on.gif" alt="Roadrunner Records Logo"/>
  18. </div>
  19.  
  20. <!--contenido inicio-->
  21.  
  22. <div id='ops' class='middio'>
  23. <table  align='center'>
  24. <tr><td><a href='#' id="linkregs" class='linksa'>Registrese</a></td><td>***</td><td><a href='#' id="linkingr" class='linksa'>Ingresar</a></td></tr>
  25. <table  align='center'><tr><td><a href='index_3.php' id="omiti" class='linksa'>Saltar Este Paso</a></td></tr></table>
  26. </div>
  27.  
  28. <div id='usu' name="usu" class="prueba" ></div>
  29.  
  30. <!--contenido para ingreso-->
  31.  
  32. <div id="ingre" class="ingre_1">
  33. <form id="ingre_usu" method="post" action="ingresar.php" target="ingres">
  34. <table align="center">
  35. <tr><td><label>Nick: </td><td><input type="text" class="objcts" id="ing_nk" name="ing_nk" /></label></td></tr>
  36. <tr><td><label>Contraseña: </td><td><input type="password" id="ing_contra" name="ing_contra" class="objcts" /></label></td></tr>
  37. <table align="center">
  38. <tr><td><input type="submit" id="ini_sesion" name="ini_sesion" value="Ingresar" class="objcts" /></td><td><input type="reset" name="rest" id="rest" class="objcts" value="Cancelar" /></td></tr>
  39.  
  40. </form>
  41. </div>
  42.  
  43. <!--contenido para registro-->
  44.  
  45. <div id="form1" class="mov">
  46. <form id="form_registro" class="form_1" action="insert_user.php" method="post" target="reg" onsubmit="validaformu()">
  47.  
  48. <table align="center" >
  49. <tr><td colspan="3" valign="middle" align="center">Registrese</td></tr>
  50. <tr><td><label>Nick: </td><td><input type="text" id="nick" name="nick" class="objcts" maxlength="20" />*</label></td></tr>
  51. <tr><td><label>Nombre: </td><td><input type="text" id="nombre" name="nombre" class="objcts" maxlength="30" /></label></td></tr>
  52. <tr><td><label>Apellido: </td><td><input type="text" id="apellido" name="apellido" class="objcts" maxlength="30" /></label></td></tr>
  53. <tr><td><label>Email: </td><td><input type="text" id="email"  name="email" class="objcts" maxlength="40" />*</label></td></tr>
  54. <tr><td><label>Contraseña: </td><td><input type="password" id="contrasena" name="contrasena" class="objcts" maxlength="15"/>*</label></td></tr>
  55.  
  56. <table align="center">
  57. <tr><td><input type="submit" name="registr" value="Registrar" class="objcts"  /></td><td><input type="reset" name="rest2" id="rest2"class="objcts" value="Cancelar" /></td></tr>
  58.  
  59. </form>
  60. </div>
  61.  
  62. </body>
  63. </html>

ingresar.php

Código PHP:
Ver original
  1. <?php
  2. include('conexion.php');
  3. mysql_select_db("wea") or die ("Fallo en la conexión Con la Base de Datos*".mysql_error());
  4.  
  5. function quitar($mensaje){
  6. $mensaje = str_replace('<','<',$mensaje);
  7. $mensaje = str_replace('>','>',$mensaje);
  8. $mensaje = str_replace('\"','"',$mensaje);
  9. $mensaje = str_replace("\"",'""',$mensaje);
  10. $mensaje = str_replace('\\\\','\"',$mensaje);
  11. $mensaje = str_replace('|','|',$mensaje);
  12. $mensaje = str_replace('||','||',$mensaje);
  13. return $mensaje;
  14. }
  15.  
  16. if(trim($_POST["ing_nk"]) != "" && trim($_POST["ing_contra"]) != ""){
  17.  
  18. $nickU = quitar($_POST["ing_nk"]);
  19. $passU = quitar($_POST["ing_contra"]);
  20.  
  21. $result = mysql_query("SELECT password FROM ingresos_usu WHERE nick='".$nickU."' AND password ='".$passU."'");
  22. if (mysql_num_rows($result) == 1){
  23. $_SESSION['usuario'] = $nickU;
  24. $bi = "Bienvenido: ".$nickU;
  25. echo "<script>
  26. window.parent.window.document.getElementById('usu').innerHTML = \"$bi\";
  27. parent.location.href='index2.php';
  28. </script>";
  29. }elseif($row["password"] <> True){
  30. $bi = "Password o Nick incorrecto.";
  31. echo "<script>
  32. window.parent.window.document.getElementById('usu').innerHTML = \"$bi\";
  33. </script>";
  34. }else{
  35. $bi = "Usuario no existente en la base de datos.";
  36. echo "<script>
  37. window.parent.window.document.getElementById('usu').innerHTML = \"$bi\";
  38. </script>";
  39. }
  40. }
  41.  
  42. ?>

No sé si esto que me gustaría hacer; pueda o deba implementarlo por javascript, jQuery el mismo html, php, si me pueden orientar sería de mucha ayuda.

Gracias
__________________
Aprendo, Aprendo Aprendo :D A la filosofía de Golden Boy ^^,
Desarrollo Web en Colombia
  #2 (permalink)  
Antiguo 20/01/2012, 12:12
 
Fecha de Ingreso: octubre-2011
Mensajes: 5
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: imprimir echo con formulario html desde php...

Hola mi estimado!.... es la primera vez que comento en forosdelweb.. asi que espero ayudarte en tu problema...

LO QUE TE ENTIENDO:

es que tu al momento de presionar el boton... la pagina hace submit(RECARGA LA PAGINA).. y quieres que vuelva a cargar el mismo formulario en el que estaba... bien el registro o el login!.

SOLUCION N1:

Lo que podrias hacer... y en mi caso yo haria es:

- Al boton en vez de ponerle SUBMIT ... ponle BUTTON (type="submit") y le pones una funcion el el onclick.

ejemplo: <input type="button" name="brn" .... onclick="llamarPHP()" />


<script>
function llamarPHP(){

$.post("mipagina.php", $("#id_form").serialize(), function(data)){
alert(data);
}
}
</script>

lo que hago en la funcion anterior.. es llamar mi pagina.php donde voy a hacer la programacion.... bien del registro o del login!.... y el DATA .. me trae la respuesta... bien de mensaje satisfactyorio.. o bien de error.....

recuerda que los datos van a viajar como _POST ... asi para que tenga un poco de seguridad....

cualquier cosa consulta.. que estoy ahora a disposicion de forosdelweb

XD
  #3 (permalink)  
Antiguo 20/01/2012, 12:15
 
Fecha de Ingreso: octubre-2011
Mensajes: 5
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: imprimir echo con formulario html desde php...

El metodo que uso es con jquery... asi que tienes que referenciar de preferencia la ultima libreria...

esto:

$.post("mipagina.php", $("#id_form").serialize(), function(data)){
alert(data);



es una funcion de jquery... asi que no te olvides de referenciar el jquery en tu pagina....

mipagina.php es la pagina donde vas a programar el regfistro o el validado del usuario...

con el $("#id_form").serialize() envias todos los datos de tu formulario a mipagina.php sin necesidad de recargar la pagina....

y el: function(data) retornas la respuesta de tu pagina php XD

me voy a almorzar... si tienes dudas pregunta nomas..

bye XD
  #4 (permalink)  
Antiguo 20/01/2012, 13:52
 
Fecha de Ingreso: enero-2012
Ubicación: En una casa
Mensajes: 72
Antigüedad: 12 años, 3 meses
Puntos: 2
Respuesta: imprimir echo con formulario html desde php...

Hola Roger,

Gracias por tu respuesta.

Pero no me funciona, además tengo una duda respecto a la función...
Las funciones de jQuery que he implementado siempre comienzan:

Código Javascript:
Ver original
  1. $(document).ready(function (){
  2. });

Entonces no entendí cómo funcionaría este código que me pasas --' .

Ahora sí, comprendiste bastante bien a tu manera lo que necesito, pero no es que se recargue y aparezca nuevamente, por que al recargarse lo único que hace es si es verdadero, redirecciona a otra web y si es falso en index, dentro de un div que tengo oculto me muestra el resultado es decir.

Si registro correcto ---> recarga a index2

Si registro falso ---> en index muestra el mensaje "contraseña mala" en el div oculto que cambia a visible cuando da alguna respuesta.

Entonces lo que requiero es que cuando sea falso me muestre el div y nuevamente el formulario...

Ya que lo que hace actualmente es mostrar el div y ocultar el formulario.
__________________
Aprendo, Aprendo Aprendo :D A la filosofía de Golden Boy ^^,
Desarrollo Web en Colombia
  #5 (permalink)  
Antiguo 20/01/2012, 14:39
 
Fecha de Ingreso: octubre-2011
Mensajes: 5
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: imprimir echo con formulario html desde php...

Hola mi estimado XD....
cuando quieras utilizar una funcion jquery directo fuera de una funcion... ahi si necesitas hacer eso:

$(document).ready(function (){
ejemplo:
$("#mi_id_elemento").click(function(){

});
});

al trabajar con ese tipo de elementos.. ahi si necesitas hacer el document.ready...
¿¿¿¿¿te preguntaras porque????? ..... sencillo...
porque el document.ready.. hace que esa parte de codigo se ejecute al momento de que cargue toda la pagina...

si tu no pones document.ready.. al momento de que la carga lea la linea de codigo: $("#mi_id_elemento"). .... busca si existe ese elemento en el HTML ... y si no lo encuentra.-.. directo te bota un error de javascript XD....... pero si ese elemento se encuentra dentro de una funcion ....

function llamada(){
$("#mi_id_elemento").click()............
}

al momento de cargar la pagina... lee la funcion pero no lee su contenido interno... es por esa razon que no sale error... XDDDDD
  #6 (permalink)  
Antiguo 20/01/2012, 14:51
 
Fecha de Ingreso: octubre-2011
Mensajes: 5
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: imprimir echo con formulario html desde php...

Hola tigre aqui te hice un ejemplo...

pagina.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
function data(){
$.post("web.php", $("#id_form").serialize(), function(data){
if(data=="error"){
alert("no has puesto datos en el formulario");
}else{
alert(data);
}
});
}
</script>
</head>

<body>
<form name="name_form" id="id_form" method="post">
<input type="text" name="txtDatos" id="txtDatos" />
<input type="button" name="btnButton" id="btnButton" value="dale chocke" onclick="data()" />
</form>
</body>
</html>




pagina web.php
<?php
if($_POST['txtDatos'] == ""){
echo "error";
}else{
echo "buena man: mandaste los siguientes datos: ".$_POST['txtDatos'];
}
?>



algo asi podrias trabajarlo!..... bueno si tienes conocimientos de php y de jquery.. se te hara sencillo...

si la respuesta que recibes es correcta podrias redireccionar la pagina con .... window.location.href='miotrapagina.php' desde el mismo javascript ... XD ....

bueno ahrioa si me paso a segui chambeando.... cuidateeeee!!!!!!

Etiquetas: echo, formulario, html, mysql, registro, sql, usuarios
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 12:08.