Este es una codigo que alguna vez me pasaron unos amigos de la Facultad, modificado para mis fines educacionales!!!
Espero que de algun forma le sirva a la comunidad que tanto me dio hasta el momento!!!:-)
Primero que nada!!!
trabaja con base de datos SQL...
Creando la DB o BD o Base de datos (como mas les guste!!!)
creamos una base de datos con el nombre "Basedatos" o el que quieran. Y una tabla que en mi caso se llama "tabla".
Tambien creamos 2 campos: "id" y "name".
Atributos de los campos!!!
"id", longitud que quieran, tipo entero o "INT" y "autoincremento".
"name", longitud que quieran, tipo "varchar".
<hr>
Ahora bien
aqui va el codigo!!!
index.php
Código:
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de uso de bases de datos con PHP y MySQL</H1>
<?php
include("sql.php");
$link=Conectarse();
if ($link==0)
{
echo "<H1>Error en apertura de bases de datos.</H1>";
exit();
}
$result=mysql_query("select * from tabla",$link);
?>
<!-- Escribimos título de las tablas -->
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
<TD><b> ID </b></TD>
<TD><b> NAME </b></TD>
</TR>
<?php
//$row["ID"] NO ES LO MISMO QUE $row["id"] o que $row["Id"]
while($row = mysql_fetch_array($result)) {
echo "<TR>";
echo "<TD> " . $row["id"] . "</TD>";
echo "<TD> " . $row["name"] . "</TD>";
echo "</TR>";
}
//liberamos memoria que ocupa la consulta...
mysql_free_result($result);
//cerramos la conexión con el motor de BD
mysql_close($link);
?>
</table>
<br>
<br>
<a href="abm.php?accion=alta">Agregar</a> <br>
<a href="abm.php?accion=modificacion">Modificar</a> <br>
<a href="abm.php?accion=baja">Borrar</a> <br>
</body>
</html>
abm.php
<!-- Página para fines didácticos, no espere sea óptima -->
Código:
<html>
<head>
<!-- de acuerdo al contenido de la variable "accion", escribimos el título -->
<?php
if ($_GET["accion"] == "alta")
echo "<title>" . "Alta de registro" . "</title>";
if ($_GET["accion"] == "baja")
echo "<title>" . "Baja en la agenda" . "</title>";
if ($_GET["accion"] == "modificacion")
echo "<title>" . "Modificación en agenda" . "</title>";
?>
</head>
<body>
<?php
// Acá mostramos la pantalla de carga de ALTAS.
if ($_GET["accion"] == "alta")
{
echo "<h1>Agregar un registro</h1>";
echo "<br>";
echo "<FORM ACTION=\"abm.php\" METHOD=\"GET\">";
echo "name: " . "<INPUT TYPE=\"TEXT\" NAME=\"txtname\">" . "<BR>";
echo "<BR>";
echo "<INPUT TYPE=\"submit\" NAME=\"OK\">";
echo "<INPUT TYPE=\"hidden\" NAME=\"accion\" VALUE=\"realizar_alta\">";
echo "</FORM>";
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
exit();
}
?>
<?php
// Acá, en base a los datos recibidos (nombre, telefono, direccion, etc), hacemos el alta.
if ($_GET["accion"] == "realizar_alta")
{
include("sql.php");
$name = $_GET["txtname"];
alta ($name);
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
}
?>
<?php
//Acá solicitamos el ID para poder modificar el registro.
if ($_GET["accion"] == "modificacion")
{
echo "<h1>Modificar un registro</h1>";
echo "<br>";
echo "<FORM ACTION=\"abm.php\" METHOD=\"GET\">";
echo "ID: " . "<INPUT TYPE=\"TEXT\" NAME=\"txtId\">" . "<BR>";
echo "<INPUT TYPE=\"hidden\" NAME=\"accion\" VALUE=\"datos_modificacion\">";
echo "</FORM>";
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
exit();
}
?>
<?php
// Acá, en base al ID recibido, pedimos los datos para MODIFICAR.
if ($_GET["accion"] == "datos_modificacion")
{
include("sql.php");
//me conecto a la BD y SELECCIONO el registro cuyo ID fue pasado.
$conexion = Conectarse();
if (!$conexion)
{
echo "<h1>Error al intentar conectar a BD</h1>";
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
exit();
}
$id = $_GET["txtId"];
$consulta = "SELECT * FROM tabla WHERE id = $id";
echo $consulta . "<br>";
$resultado = mysql_query($consulta, $conexion);
$fila = mysql_fetch_array($resultado);
if (!$fila)
{
echo "<h1>Registro inexistente</h1>";
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
exit();
}
//cargo los datos del registro en variables para que sea más cómodo trabajar.
$name = $fila["name"];
//liberamos memoria que ocupa la consulta...
mysql_free_result($resultado);
//cerramos la conexión con el motor de BD
mysql_close($conexion);
/*
ahora que teóricamente tengo los datos del registro que quiero modificar, muestro
el formulario de carga.
*/
echo "<h1>Modificar un registro</h1>";
echo "<br>";
echo "<FORM ACTION=\"abm.php\" METHOD=\"GET\">";
echo "name: " . "<INPUT TYPE=\"TEXT\" NAME=\"txtname\" VALUE=\"$name\">" . "<BR>";
echo "<BR>";
echo "<INPUT TYPE=\"submit\" NAME=\"submit\">";
echo "<INPUT TYPE=\"hidden\" NAME=\"accion\" VALUE=\"realizar_modificacion\">";
echo "<INPUT TYPE=\"hidden\" NAME=\"id\" VALUE=\"$id\">";
echo "</FORM>";
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
}
?>
<?php
// Acá, en base al ID recibido, hacemos la modificación.
if ($_GET["accion"] == "realizar_modificacion")
{
include("sql.php");
$id = $_GET["id"];
$name = $_GET["txtname"];
modificacion($id, $name);
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
}
?>
<?php
// Acá mostramos la pantalla de carga de BAJAS.
if ($_GET["accion"] == "baja")
{
echo "<h1>Dar de baja un registro</h1>";
echo "<br>";
echo "<FORM ACTION=\"abm.php\" METHOD=\"GET\">";
echo "ID: " . "<INPUT TYPE=\"TEXT\" NAME=\"txtId\">" . "<BR>";
echo "<INPUT TYPE=\"hidden\" NAME=\"accion\" VALUE=\"realizar_baja\">";
echo "</FORM>";
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
exit();
}
?>
<?php
// Acá, en base al ID recibido, hacemos la baja.
if ($_GET["accion"] == "realizar_baja")
{
include("sql.php");
$id = $_GET["txtId"];
baja($id);
echo "<br>" . "<a href=\"/\">Volver a la agenda</a>";
}
?>
</body>
</html>
y por ultimo!!! el
sql.php en donde ira la coneccion con nuestra DB.
Código:
<?php
function Conectarse()
{//inttroducimos los datos de host que son "Server", "usuario" y "contraseña"
if (!($link=mysql_connect("localhost","root","")))//aca hay que introducir los datos que especifique arriba!!!
{
return 0;
}
if (!mysql_select_db("basedatos",$link))
{
return 0;
}
return $link;
}
//--------------------------
function alta ($name)
{
$conexion = Conectarse();
if (!$conexion)
{
echo "<h1>No se puede dar de alta. Error al conectar.</h1>";
exit();
}
// NO poner comillas simples en nombre de tabla, ni de campos, sólo en valores alfanuméricos.
$consulta = "INSERT INTO tabla (name) VALUES ('$name')";
echo $consulta;
$resultado=mysql_query($consulta,$conexion);
//cerramos la conexión con el motor de BD
mysql_close($conexion);
}
//--------------------------
function baja ($id)
{
$conexion = Conectarse();
if (!$conexion)
{
echo "<h1>No se puede dar de baja. Error al conectar.</h1>";
exit();
}
// NO poner comillas simples en nombre de tabla, ni de campos, sólo en valores alfanuméricos.
$consulta = "DELETE FROM tabla WHERE id = $id";
echo $consulta . "<BR>";
$resultado=mysql_query($consulta,$conexion);
//echo "Resultado de la operación: " . $resultado;
//cerramos la conexión con el motor de BD
mysql_close($conexion);
}
//--------------------------
function modificacion ($id, $name)
{
$conexion = Conectarse();
if (!$conexion)
{
echo "<h1>No se puede dar de alta. Error al conectar.</h1>";
exit();
}
// NO poner comillas simples en nombre de tabla, ni de campos, sólo en valores alfanuméricos.
/*
UPDATE `agenda` SET `nombre` = 'pepe3',
`tel` = '467641_1',
`direccion` = 'ch 149_1',
`mail` = '[email protected]' WHERE `agenda`.`id` =2
*/
$consulta = "UPDATE tabla SET name = '$name',";
$consulta = $consulta . "WHERE id = $id";
echo $consulta;
$resultado=mysql_query($consulta,$conexion);
//cerramos la conexión con el motor de BD
mysql_close($conexion);
}
?>
Como ya dije: espero que les sirva y cualquier duda pregunten que para eso estamos o estoy!!!:-):-):-):-):-):-)