Skip navigation links

MySQL Forums :: Spanish :: Duda sobre agrupación de datos


Advanced Search

Practica
Posted by: Kelvin Sevilla ()
Date: April 30, 2010 07:59AM

Hola Que Tal?
Necesito ayuda con un ejercicio es utilizando MySQL y PHP aqui les dejo el ejercicio espero su ayuda lo mas pronto posible....... :)

Elaborar un programa que permita recuperar los nombres de las bases de datos en un control SELECT, escriba un nombre para una tabla y la cantidad de campos para la tabla. Generar por cada campo una caja de text para el nombre, un SELECT para el tipo de datos, una caja de texto para el ancho y un grupo radio button para especificar la clave primaria. al final, crear la tabla con las especificaciones del programa....

amigos aqui les dejo lo que he hecho hasta hoy:

<?php
$Mensaje = "";

if($Cnx = @MySQL_Connect("localhost", "root", "root"))
{
if(@mysql_query("USE `$_POST[BaseDatos]`", $Cnx))
{

}

$CajasGeneradas = ""; #Variable que almacenará el código HTML de las cajas generadas

if(isset($_POST["Accion"])) #Comprobar si se ha hecho click en alguno de los botones
{
switch($_POST["Accion"]) #Determinar que botón se presioó
{
case "Generar": #Si se hizo click en el botón Generar
// Inicio de la tala de resultados
$CajasGeneradas = "
<hr />
<table>";
// Este FOR va iterar tantas veces como cajas de texto se necesite generar
for(@$Caja = 1; $Caja <=@$_POST["Cantidad"]; $Caja++)
{
// Se van agregando las cajas de textro generada
// Note el par de corchetes en el atributo NAME de la caja
$CajasGeneradas .= "
<tr>
<td>
Campo$Caja
</td>
<td>
<input type=\"text\" name=\"Nom_Campo\" class=\"caja\" />
<td/>
<td>
<select name=TipoDato>
<option>int</option>
<option>varchar</option>
<option>char</option>
<option>double</option>
</select> <br>
</td>
<td>
Ancho
</td>
<td>
<input type=\"text\" name=\"ancho\" class=\"caja\" size=7 />
<td/>

</tr>";
}

// Después de las cajas de texto se incluye el botón Procesar
$CajasGeneradas .= "

</table>
<input type=\"submit\" name=\"Accion\" value=\"CrearTabla\" />
";
break;

case "CrearTabla": #Si se hizo click en Procesar

if (mysql_query("CREATE table `$_POST[Nombre]`(`$_POST[Nom_Campo]$_POST[TipoDato]($_POST[ancho])`);", $Cnx))
{

$Mensaje = "La tabla se ha creado con éxito";
}
else
{
$Mensaje = "No se ha podido crear la tabla";

}


}
}


echo "
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1 //EN\" \"http://www.w3.org/TR/xhtml111/DTD/xhtml111.dtd\" >
<html xmlsS\"http://www.w3.org/1999/xhtml\">
<head>
<title>P7Propuesto1</title>
<style>
body{font-family:'Verdana', 'Luxi Sans';font-size:11px;}
legend{
padding:10px;
background-color:#efefef;
color:black;border:#ababab solid 1px;font-weight:blod;}
</style>
</head>
<body>
<form method=\"POST\"action=\"$_SERVER[PHP_SELF]\">
<fieldset>
<legend>Bases de Datos:</legend>
<table>
<tr>
<td>
Escriba un Nombre para la Tabla:
</td>
<td>
<input type=\"text\" name=\"Nombre\" class=\"caja\" />
</td>
</tr>
<tr>";

if($Lista = @MySQL_Query("SHOW DATABASES", $Cnx))
{
echo "

<form method=post><br>
Bases de Datos Actualmente:
<select name=BaseDatos>";
//Muestra las Bases de Datos
while($Base = MySQL_Fetch_Array($Lista))
//Si las bases de datos son esos que no las muestre
{
if($Base["Database"] != "information_schema" && $Base["Database"] != "mysql")
echo "<option>$Base[Database]</option>";
}
echo "</select> <br>"
.MySQL_Num_Rows($Lista)." Bases de Datos en Lista</form>";
}
else
{
echo "Imposible Recuperar la Lista de Bases de Datos";
}
}
echo"
<hr />
<td>
Ingrese Un Numero de Campos:
</td>
<td>
<input type=\"text\" name=\"Cantidad\" class=\"caja\" />
<input type=\"submit\"name=\"Accion\" value=\"Generar\" />
</td>
</tr>
</table>
$CajasGeneradas
</fieldset>
$Mensaje
</form>
</body>
</html>";

Options: ReplyQuote


Subject Views Written By Posted
Duda sobre agrupación de datos 1800 jose alonso rodriguez tapia 04/12/2010 05:42PM
Practica 1276 Kelvin Sevilla 04/30/2010 07:59AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.