Cita:
Iniciado por emprear Bueno, es probable, porque ni siquiera se sabe cual es tu problema
lo que supone que index_conectar.php es el archivo y action="index_conectar.php"
Si el action y el nombre de archivo son coincidentes, al presionar submit, la acción redirige al mismo archivo (no recarga nada, recargar o refrescar es la acción producida por accionar el boton recargar del navegador, F5)
aclarado lo de recargar, obvio, si el action es el mismo archivo, vuelve a mostrar el formulario, ¿que esperabas?, y tu form original, pese a los errores, y dejando a un lado el onClick="validar();, que no se sabe que hace, hace eso.
Si eventualmente hubiese algún error en la validación (alguno de los campos vacíos, por ejemplo), y querés recuperar los valores no vacíos, se hace lo que te indiqué.
Concluyendo, si no se entiende lo que querés hacer, seguramente cualquier código que te propongamos va a resultarte irrelevante
ahh vale, creo que no me expliqué bien.
tengo un documento llamado index_conectar.php y otro documento llamado conectar.php.
ambos documentos son pruebas de la utilización de los objetos con php, es decir php orientado a objetos.
en index_conectar.php ocurren dos actividades (dejo el documento completo más abajo):
1- muestro el contenido de una tabla.
2- muestro un formulario para introducir información en la tabla.
en conectar.php (si quieren dejo el código completo también) guardo las clases y los métodos tanto para conectar, para leer como para insertar datos en la base de datos.
el problema es el siguiente. cuando introduzco un dato nuevo en el formulario el formulario resetea pero no aparece más arriba lo que introduje en el formulario.
yo pienso que cuando se envía un formulario se refresca la página y con ello se muestra arriba lo introducido porque se vuelve a ejecutar el documento.
este es el index_conectar.php en su totalidad (el último form es irrelevante, se puede quitar y seguiría ocurriendo lo mismo)
Código PHP:
Ver original<?php
include("conectar.php");
?>
<HTML>
<HEAD>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<!--<SCRIPT type="text/javascript" language="javascript" src="javascript.js"></SCRIPT>-->
</HEAD>
<body onLoad="limpiar();">
<h2>Listado de comentarios en la tabla libro_de_visitas</h2>
<?php
$trabajo= new Trabajo();
$visitas=$trabajo->get_visitas();
for($i=0;$i<sizeof($visitas);$i++) {
echo "por ".$visitas[$i]["nombre"];
echo "<br>";
echo $visitas[$i]["texto"];
echo "<br>";
}
?>
<hr>
<?php
if(isset($_POST['boton'])) {
$comentarios=new Trabajo();
$comentarios->add_visitas($_POST['nombres'],$_POST['textos']);
}
?>
<h2>formulario para introducir datos en la tabla libro_de_visitas</h2>
<form name="ingresa_datos" method="post" action="index_conectar.php">
<table width="400px" align="center">
<tr>
<td align="center" width="400" valign="top" colspan="2">
<p>ingrese su comentario</p>
</td>
</tr>
<tr>
<td valign="top" align="left">
su nombre
</td>
<td valign="top" align="left">
<input type="text" name="nombres">
</td>
</tr>
<tr>
<td valign="top" align="left">
su mensaje
</td>
<td valign="top" align="left">
<textarea name="textos" cols="35" rows="5"></textarea>
</td>
</tr>
<tr>
<td valign="top" align="center" colspan="2">
<input type="submit" name="boton" value="Deje su mensaje" onClick="validar();"></input>
</td>
</tr>
</table>
</form>
<table>
<tr>
<td colspan="2">
<form><input type="text"></input></form>
</td>
</tr>
</table>
</body>
</HTML>
gracias
emprear por tu paciencia