Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Jose Maldonado en 06 de Septiembre 2014, 00:11
-
Hola a todos,
A medida que avanzo en esto de escribir aplicaciones web (apenas estoy comenzando), surgen más preguntas.
Pregunta:
Tengo un fichero html en el que se selecciona una actividad con Botón Radio. También tengo un programita php que recibe y analiza la actividad seleccionada con el Botón Radio del fichero html.
Supongamos que la actividad implica realizar una consulta en una tabla mysql, pero que requiere que se le suministre datos adicionales a través de un segundo formulario. ¿Cómo hago para activar este segundo formulario?, justo después que en el programa php se ha identificado la actividad a ejecutar.
Un saludo
-
Hola Jose, dado que php es código que se puede mezclar con código html no tienes ningún problema: puedes incluir todo el código html que quieras en el mismo archivo donde tienes el código php. Lo único que tienes que hacer es delimitar con las etiquetas <?php y ?> los fragmentos de código php.
Por tanto, puedes poner el formulario en el archivo php después del código que ejecuta la consulta a la base de datos. O si lo prefieres, puedes poner un link desde la página php a la página del formulario.
Creo que lo comprenderás mejor si lees esto: http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=607:generar-html-usando-lenguaje-php-ejemplos-sencillos-que-estudiar-para-ser-programador-web-cu00733b&catid=69:tutorial-basico-programador-web-html-desde-cero&Itemid=192
Esto es parte del curso básico de HTML: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=69&Itemid=192
Saludos
-
Muy bien Javi,
es verdad, pero como nuevo en estas cosas todavía me cuesta mezclar html y php.
Indícame, por favor, una manera de colocar un link desde el programa php a la página del formulario.
Saludos y gracias.
-
Simplemente insertar un link, por ejemplo:
<html>
<head>
<title>HTML con PHP – aprenderaprogramar.com</title>
</head>
<body>
Esto es una página HTML con código PHP incrustado.
<br />
<?php
echo "Esto es código PHP incrustado, aquí pones el código php que quieras."
// Ahora termina el código php y seguimos con código html y ponemos el link al formulario
?>
<a href=”http://aprenderaprogramar.com/formulario.html” title=”Volver a formulario”>Ir al formulario</a>
</body>
</html>
-
Muchas gracias Javi
-
Javi,
inserté el link tal como dijiste pero me aparece que no puede encontrar la página.
En la dirección se muestra lo siguiente::
http://www.maldonaj.byethost13.com/sistemasdeinformacion/%C3%A2%E2%82%AC%C2%9Dhttp://maldonaj.byethost13.com/sistemasdeinformacion/formulario_insertar.html%C3%A2%E2%82%AC%C2%9D
El link que inserto es:
http://www.maldonaj.byethost13.com/sistemasdeinformacion/formulario_insertar.html
el fichero formulario_insertar.html está en la capeta sistemasdeinformacion que a su vez está en la carpeta htdocs de mi URL http://www.maldonaj.byethost13.com.
Un saludo
-
Hola, inserta el código del archivo donde hayas introducido el link para poder revisarlo. Pulsa el botón # del foro e inserta el código entre las etiquetas [cod] ... [ /cod]
Saludos
-
Javi,
antes de que veas el código te explico lo que quiero hacer:
Tengo un fichero html llamado selecciona_actividad_4.html, otro llamado sistema4.php y un tercero llamado formulario_insertar.html.
En selecciona_actividad_4.html puedo seleccionar (insertar, mostrar, eliminar o borrar un registro en una tabla mysql )a través de un radio button.
En sistema4.php se recibe la opción seleccionada en selecciona_actividad_4.html.
Ahora, cuando se ha pulsado la opción insertar, sistema4.php hace un link a formulario_insertar.html para recibir los datos del registro a insertar en la tabla mysql.
Los dos formularios usan el method="GET" y action="sistema4.php" (no se si esto trae problemas, pero no se cómo hacer para que sistema4.php pueda recibir los datos a insertar??).
código de selecciona_actividad_4.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> Mi primera aplicación en la Web</title>
</head>
<body>
<h1> SELECCIÓN DE LA ACTIVIDAD A REALIZAR </h1>
<hr size="8px" color="blue" />
<hr size="8px" style="color: black; background-color: black; width:75%;" />
<form method="get"action="sistema4.php">
<br/> <br/>
Insertar un registro: <input name="actividad" value="insertar" type="radio"/>
<br/> <br/>
Mostrar registros: <input name="actividad" value="mostrar" type="radio"/>
<br/> <br/>
Eliminar registros: <input name="actividad" value="eliminar" type="radio"/>
<br/> <br/>
Consultar: <input name="actividad" value="consultar" type="radio"/>
<br/> <br/>
<input type="reset" value="Borrar la Selección" />
<input value="Realizar" type="submit" />
<hr size="8px" color="blue" />
<hr size="8px" style="color: black; background-color: black; width:75%;" />
</form>
</body>
</html>
El código de sistema4.php es:
<html> //Ejemplo de un sistema simple programado en php
<body>
<title> La respuesta del interpretador Php</title>
<?php
//Recepción de los datos del primer formulario
echo '<br/><br/>';
$actividad= $_GET['actividad'];
if($actividad == "insertar")
{ //Insertar registros
//<a href=”http://maldonaj.byethost13.com/sistemasdeinformacion/formulario_insertar.html” title=”Volver a formulario”>Ir al formulario</a>
?>
<a href=”formulario_insertar.html” >Ir al formulario</a>
<?php
//$link_BD= mysql_connect("sql210.byethost13.com", "b13_15246293", "****");
//mysql_select_db("b13_15246293_LucianoBaseDeDatos", $link_BD);
//mysql_query("INSERT INTO alumnos VALUES ('90845629', 'Luciano', 'Maldonado', 'Tópicos especiales en Estadística', 15)", $link_BD);
//mysql_query("INSERT INTO alumnos VALUES ('20200238', 'Malvy', 'Alviarez', 'Embriología', 19)", $link_BD);
//mysql_close($link_BD); // Cerramos la conexion con la base de datos
}
if($actividad == "mostrar")
{ //Mostrar registros
$link_BD = mysql_connect("sql210.byethost13.com", "b13_15246293", "****");
mysql_select_db("b13_15246293_LucianoBaseDeDatos", $link_BD);
$registros_BD = mysql_query("SELECT * FROM alumnos", $link_BD);
// Lectura de cada uno de los registros existentes
while($fila = mysql_fetch_array($registros_BD))
{// $fila es un arreglo con todos los campos existentes en la tabla
echo "<hr>";
echo "Cédula: ".$fila['cedula']."<br>";
echo "Nombre: ".$fila['nombre']."<br>";
echo "Apellidos: ".$fila['apellido']."<br>";
echo "Asignatura: ".$fila['asignatura']."<br>";
echo "Nota:".$fila['nota']."<br>";
}
mysql_free_result($registros_BD); // Liberamos los registros
mysql_close($link_BD); // Cerramos la conexion con la base de datos
echo "<hr>";
}
if($actividad == "eliminar")
{//Eliminar registros
$link_BD = mysql_connect("sql210.byethost13.com", "b13_15246293", "****");
mysql_select_db("b13_15246293_LucianoBaseDeDatos", $link_BD);
mysql_query("DELETE FROM alumnos WHERE nota=19", $link_BD);
mysql_close($link_BD); // Cerramos la conexion con la base de datos
}
if($actividad == "consultar")
{ //Consultar registros
$link_BD = mysql_connect("sql210.byethost13.com", "b13_15246293", "****");
mysql_select_db("b13_15246293_LucianoBaseDeDatos", $link_BD);
mysql_query("UPDATE alumnos set nota=19 WHERE nota=20", $link_BD);
mysql_query("UPDATE alumnos SET nombre='Luciano' WHERE nombre='LUCIANO luciano'", $link_BD);
mysql_close($link_BD); // Cerramos la conexion con la base de datos
}
?>
</body>
</html>
El código de formulario_insertar.html es:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> Para Insertar un Registro</title>
</head>
<body>
<h1> DATOS DEL REGISTRO </h1>
<hr size="8px" color="blue" />
<hr size="8px" style="color: black; background-color: black; width:75%;" />
<form method="get"action="sistema4.php">
<br/> <br/>
NOMBRE: <input name="nombre" value="" type="text"/>
<br/> <br/>
APELLIDO: <input name="apellido" value="" type="text"/>
<br/> <br/>
CÉDULA: <input name="cedula" value="" type="text"/>
<br/> <br/>
ASIGNATURA: <input name="asignatura" value="" type="text"/>
<br/> <br/>
CALIFICACIÓN: <input name="nota" value="" type="text"/>
<br/> <br/>
<input type="reset" value="LIMPIAR LOS CAMPOS" />
<input value="ENVIAR" type="submit" />
<hr size="8px" color="blue" />
<hr size="8px" style="color: black; background-color: black; width:75%;" />
</form>
</body>
</html>
Un saludo y gracias
-
Antes que nada recomendarte que no pongas los datos reales de bases de datos y contraseñas en tus post ya que podría usarlos alguien para borrarte o dañarte tu página web.
En el código veo estos problemas:
<a href=”http://maldonaj.byethost13
Aquí tienes unas comillas versales que no son válidas. Las únicas comillas válidas son las comillas planas: <a href="http://maldonaj.byethost13
La diferencia entre una y otra es que las versales están ligeramente inclinadas y las planas no, pero eso ya te da lugar a un error.
Otra cosa que veo:
if($actividad == "insertar")
{ //Insertar registros
?>
<a href=”formulario_insertar.html” >Ir al formulario</a>
<?php
}
Al estar el código HTML dentro de un if php, el código HTML no se mostrará a no ser que se cumpla el if.
Si quieres que el código HTML se muestre siempre tienes que ponerlo fuera de un if.
Por ejemplo si lo pones al final:
?>
<a href=”formulario_insertar.html” >Ir al formulario</a>
</body>
Ahí sí se mostrará siempre, porque no está dentro de un if.
Saludos