Enviar datos de formulario html a php y MySQL

Quisiera saber como hacer para que me funcionen correctamente los hipervínculos que coloque en mi página.html a otra página que es.php, ya que cuando pulso el hipervínculo, el explorador me muestra los códigos de la página.php en lugar de mostrarme la página tal y como es...
Mi sistema operativo es windows xp, y estoy utilizando el appserv v2.6.0 y el MySQL query browser...
Estos son los códigos del formulario HTML que estoy utilizando
<html>
<head>
<title> Cuerpo </title>
</head>
<body>
<center><hr><h1><b>ALTAS</b></h1><hr></center>
<center><form method="post" action="proceso1.php">
<b> Codigo: </b>
<input type="text" size="5" name="codigo"><br><br>
<b> Nombre: </b>
<input type="text" size="15" name="nombre"><br><br>
<b> Descripcion: </b>
<input type="text" size="15" name="descripcion"><br><br>
<b> Categoria: </b>
<input type="text" size="15" name="categoria"><br><br>
<b> Precio: </b>
<input type="text" size="5" name="precio"><br><br>
<center><input type="submit" value="Dar de alta">
<input type="reset" value="Cancelar">
</center>
</form></center>
</body>
</html>
y este son los codigos de PHP de la pagina proceso1.php
<?php
// Primero comprobamos que ningún campo esté vacío y que todos los campos existan.
if(isset($_POST['codigo']) && !empty($_POST['codigo']) &&
isset($_POST['nombre']) && !empty($_POST['nombre']) &&
isset($_POST['descripcion']) && !empty($_POST['descripcion']) &&
isset($_POST['precio']) && !empty($_POST['precio'])) {
// Si entramos es que todo se ha realizado correctamente
$link = mysql_connect("localhost","root","1234");
mysql_select_db("BD_PRODUCTOS",$link);
// Con esta sentencia SQL insertaremos los datos en la base de datos
mysql_query("INSERT INTO ARTICULOS (CODIGO,NOMBRE,DESCRIPCION,CATEGORIA,PRECIO)
VALUES ('{$_POST['codigo']}','{$_POST['nombre']}''{$_POST['descripcion']}''{$_POST['categoria']}''{$_POST['precio']}')",$link);
// Ahora comprobaremos que todo ha ido correctamente
$my_error = mysql_error($link);
if(!empty($my_error) {
echo "Ha habido un error al insertar los valores. $my_error";
} else {
echo "Los datos han sido introducidos satisfactoriamente";
}
} else {
echo "Error, no ha introducido todos los datos";
}
?>

1 respuesta

Respuesta
1
Probé tu código y el único error que encontré fue que en la línea 15 del archivo de proceso1.php te falta un paréntesis, debería ser:
if(!empty($my_error)) {
Por otro lado a mi me funciono bastante bien, si un servidor Apache no reconoce PHP, es porque probablemente no esta bien configurado, el error más común que muestra es ese, el que no traduzca los códigos PHP.. Te recomiendo verificar si tienes activado PHP desde Apache, o bien prueba con algún otro paquete que traiga todo el paquete PHP-Mysql-Apache, yo trabajo con WAMP y me ha funcionado bien
Ahí me contaras.
Listo! Ya arregle el problema del código...
Pero el problema es que las páginas php no las puedo abrir por medio de hipervínculos, es decir, si yo, por ejemplo, escribo en el explorador de internet lo siguiente: 127.0.0.1/pagina.php, si me abre correctamente!, pero cuando yo inserto un hipervínculo hacia esa página desde otra página html no me abre correctamente, me sale puros códigos, y yo intente probar con WAMP, borre de mi computadora el appserv e instale el WAMP, pero tuve problemas con el MySQL, así que tuve que desinstalarlo y volver a instalar el appserv, y no se como verificar el PHP desde apache...
Una vez más, gracias por su ayuda de antemano! XD
Me podrías traer el código con el cual llamas a tu página con un hiperviculo por favor, creo que desde esta el error..
Los codigos que te envie de primero son un ejemplo, ya que cuando yo le doy al botom "Dar de alta", me muestra los codigos php, y asi me pasa con el resto de los formularios, y tambien cuando uso "<a href=pagina.php>enlace</a>", y eso que yo he guardado todos los archivos en una misma carpeta, la que dice www, dentro de la carpeta appserv. en disco local C
De todos modos aquí te envío otros códigos con los cuales he estado probando y no me funcionan:
Código en html:
<html>
<head>
<title> Cuerpo </title>
</head>
<body background="fondoverde.bmp">
<center><a href="mostrar.php"><img src="Bienvenidos.gif" alt="bienvenidos"></a></center>
</body>
</html>
Codigo de mostrar.php:
<html>
<head><title>Todos los articulos</title>
</head>
<body>
<?php
//*Abrir una conexion con el sevidor
$id_conn=mysql_connect("localhost","root","1234");
if ($id_conn==0)
{
echo"Fallo la conexión a la base de datos";
//echo mysql_errormsg($id_conn);
}
else
{
//*Seleccionar la base de Datos de productos
$dbSelect=mysql_select_db('BD_PRODUCTOS',$id_conn);
if (!$dbSelect)
{
// die ('No se pudo seleccionar la BD: '.mysql_error());
}
$strsql="SELECT CODIGO,NOMBRE,DESCRIPCION,CATEGORIA,PRECIO FROM ARTICULOS;";
$result=mysql_query($strsql);
?>
<hr>
<h2 align="center">Todos los articulos</h2>
<table border="1" align="center">
<tr>
<th>CODIGO</th><th>NOMBRE</th><th>DESCRIPCION</th><th>CATEGORIA</th><th>PRECIO</th>
</tr>
<?
while ($registro=mysql_fetch_array($result))
{
Echo"<tr><td>",$registro["CODIGO"],"</td><td>",
$Registro["NOMBRE"],"</td><td>",
$Registro["DESCRIPCION"],"</td><td>",
$Registro["CATEGORIA"],"</td><td>",
$registro["PRECIO"],"</td><td>";
}
?>
</table>
<? } ?>
</body>
</html>
PD: cuando yo abro la página php por 127.0.0.1/mostrar.php si me abre correctamente, pero cuando yo le doy click a la imagen con el hipervínculo en la página html, el explorador me muestra el código fuente...
y yo he probado con cambiar "<a href=pagina.php>enlace</a>", por "<a href=127.0.0.1/pagina.php>enlace</a>", y tampoco me ha dado resultado
Se me hace muy muy extraño, lo acabo de probar y funciona correctamente, empiezo a creer que es configuración del AppServer, en especifico la tuya, porque incluso la baje para probar y no me marca ningún tipo de error.
Podrías intentar verificar la configuración de Apache, o bien cambiar a WAMP, para ver si te provoca el mismo conflicto.
Hola! Ya resolví el problema! Anteriormente lo que sucedía era que yo guardaba un archivo con formato html y el otro con formato php, entonces, hice la prueba y guarde todos los archivos con formato php, y listo!, me funcionaron correctamente!.
De todas maneras agradezco mucho por su atención! Saludos XD

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas