Foros del Web » Programando para Internet » PHP »

¿hacer esto es posible en base de datos?

Estas en el tema de ¿hacer esto es posible en base de datos? en el foro de PHP en Foros del Web. Buenas amigos de forosdelweb, vengo hoy con una pregunta acerca de un trabajo que estoy haciendo. Antes que nada les explicare de que va esto ...
  #1 (permalink)  
Antiguo 21/07/2015, 07:54
 
Fecha de Ingreso: julio-2015
Mensajes: 7
Antigüedad: 8 años, 9 meses
Puntos: 0
Exclamación ¿hacer esto es posible en base de datos?

Buenas amigos de forosdelweb, vengo hoy con una pregunta acerca de un trabajo que estoy haciendo. Antes que nada les explicare de que va esto y posteriormente les planteare la duda:

Me encomendaron un trabajo de que un formulario dejara de mandar la informacion al correo del dueño, querian que la informacion llegara a una base de datos en MySQL. Hasta aqui todo bien, lo pude realizar.

Luego querian que esa base de datos se imprimiera en un documento HTML, es decir mostrar la informacion de la base de datos en unas tablas HTML. Perfecto, anoche lo consegui con algunas pequeñas trabas, que realmente fueron tonterias.

pero ahora, quieren que agregue un checkbox en cada fila de la tabla HTML para que el dueño pueda pisar en el mencionado checkbox luego en enviar y este se agregue a la base de datos en MySQL y que ademas, luego de enviar me de la opcion de mandarle un correo con ciertos datos al usuario que lleno el formulario. esto desde las tablas HTML.

les dejare algunas imagenes mas los codigos que tengo. EN ESTOS MOMENTOS LO ESTOY HACIENDO EN EL LOCALHOST CON XAMPP:

TABLAS HTML DE LA BASE DE DATOS:


BASE DE DATOS:


CODIGO PHP para mostrar base de datos en tablas HTML:
Código PHP:
<?php
    
class conexion{
        function 
recuperardatos(){
            
$host "localhost";
            
$user "kalanikochs";
            
$pw "4426402";
            
$db "cuentas";

            
$con mysql_connect($host$user$pw) or die ("error al conectar a la base de datos");
            
mysql_select_db($db$con) or die ("error al conectar a la base de datos");
            
$query ="SELECT * FROM tabla";
            
$resultado mysql_query($query);

            while (
$fila mysql_fetch_array($resultado)) {
                echo 
"<table style='border: solid 1px black;'><tr><th>cliente</th><th>cédula</th><th>telfono</th><th>mail</th><th>pedido</th><th>banco</th><th>medio</th><th>monto</th><th>estado</th><th>municipio</th><th>zonapostal</th><th>ciudadpueblo</th></tr>";
                echo 
"<tr><td> $fila[cliente] </td> <td> $fila[cedula] </td> <td> $fila[telefono] </td> <td> $fila[mail] </td> <td> $fila[pedido] </td> <td> $fila[emisor] </td> <td> $fila[medio] </td> <td> $fila[monto] </td> <td> $fila[estado] </td> <td> $fila[municipio] </td> <td> $fila[zonapostal] </td> <td> $fila[ciudadpueblo] </td></tr> <br>";
                echo 
" </table>";




            }

        }
    }
?>
CODIGO HTML que van conjunto con el codigo de arriba:
Código HTML:
<html>
<head>
	<title>Imprimir base de datos</title>
	<style>
table, td, th {
     border: 1px solid black;
     
}
th {
	color: #000;
}
table {

	border-color: #A8A8A8;
}

</style>

<style>
body {
	background-image: url("http://parquederepuestos.com/Formularios/Ofrecer_Repuesto/fondo2.jpg");
}
</style>
<style>
fieldset {
	background-color: #fff;
}
</style>

</head>
<body>
	<div>
		<fieldset>
			<legend> Datos impresos: </legend>
			<div>
[PHP]<?php
include("conexion.php");
$con = new conexion();
$con->recuperardatos();
?>[/PHP]

			</div>



		</fieldset>
		


	</div>
	</body>
	<footer>
	</footer>

	</html> 


Pude colocar el checkbox desde HTML pero no se como hacer para que al marcarlo y darle enviar mande el "checkbox" a la base de datos, y que posteriormente me deje enviar un correo al usuario correspondiente del checkbox.

no soy un experto en base de datos, soy solo un novato en este tema de MySQL, quisiera que por favor me ayudasen, no se me ocurre mas nada, por favor
  #2 (permalink)  
Antiguo 21/07/2015, 08:06
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: ¿hacer esto es posible en base de datos?

OFF TOPIC en Base de Datos.

No se tratan temas de programación en los foros de BBDD.

Movido a PHP, por parecer más adecuado.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 21/07/2015, 08:26
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: ¿hacer esto es posible en base de datos?

Tienes algunos errores en el código. P ej aquí:

Código PHP:
Ver original
  1. while ($fila = mysql_fetch_array($resultado)) {
  2.                 echo "<table style='border: solid 1px black;'><tr><th>cliente</th><th>cédula</th><th>telfono</th><th>mail</th><th>pedido</th><th>banco</th><th>medio</th><th>monto</th><th>estado</th><th>municipio</th><th>zonapostal</th><th>ciudadpueblo</th></tr>";
  3.                 echo "<tr><td> $fila[cliente] </td> <td> $fila[cedula] </td> <td> $fila[telefono] </td> <td> $fila[mail] </td> <td> $fila[pedido] </td> <td> $fila[emisor] </td> <td> $fila[medio] </td> <td> $fila[monto] </td> <td> $fila[estado] </td> <td> $fila[municipio] </td> <td> $fila[zonapostal] </td> <td> $fila[ciudadpueblo] </td></tr> <br>";
  4.                 echo " </table>";

Debes sacar esto: echo "<table style='border: solid 1px black;'> y echo " </table>"; del while, de lo contrario por cada resultado de la consulta te va a crear una tabla.

Respecto a los checkbox puedes añadir una celda al principio de cada fila de la tabla y en ella colocar un input checkbox. El name de cada checkbox que coloques debe ser el mismo, y el value de cada checkbox corresponderá a el identificador único que tenga cada registro en la BD. Al final de la página colocas un botón submit con value "Enviar correos" por ejemplo y recoges por POST los valores de los IDs seleccionados para que puedas hacer con ellos lo que necesites. Aquí te dejo un código a modo de ejemplo para que me entiendas:

Código PHP:
Ver original
  1. <html>
  2. <head>
  3.     <?php
  4.         if ($_SERVER["REQUEST_METHOD"] == "POST") {  
  5.             if (isset ($_POST["numero"]))
  6.             {
  7.                 $numero=$_POST["numero"];
  8.                 $count = count($numero);
  9.                 echo "Se seleccionaron los ID: <br><br>";
  10.                 for ($i = 0; $i < $count; $i++) {
  11.                    
  12.                     echo $numero[$i]."<br>";
  13.                 }
  14.                 exit;
  15.             }
  16.             else
  17.             {
  18.                 echo "No se selecciono ninguno.";
  19.                 exit;
  20.             }
  21.         }
  22.     ?>
  23. </head>
  24. <body>
  25. <form action="" method="post">
  26.      <table border="1">
  27.         <tr><td><input type="checkbox" name="numero[]" value="1345"/></td><td>Dato 1</td><td>Dato 2</td><td>Dato 3</td></tr>
  28.         <tr><td><input type="checkbox" name="numero[]" value="6563"/></td><td>Dato 1</td><td>Dato 2</td><td>Dato 3</td></tr>
  29.         <tr><td><input type="checkbox" name="numero[]" value="2048"/></td><td>Dato 1</td><td>Dato 2</td><td>Dato 3</td></tr>
  30.         <tr><td><input type="checkbox" name="numero[]" value="2848"/></td><td>Dato 1</td><td>Dato 2</td><td>Dato 3</td></tr>
  31.         <tr><td><input type="submit"></td></tr>
  32.     </table>
  33. </form>
  34. </body>
  35. </html>
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]

Última edición por chronos682; 21/07/2015 a las 08:41
  #4 (permalink)  
Antiguo 21/07/2015, 09:28
 
Fecha de Ingreso: julio-2015
Mensajes: 7
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: ¿hacer esto es posible en base de datos?

no entiendo amigo :S
  #5 (permalink)  
Antiguo 21/07/2015, 09:29
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: ¿hacer esto es posible en base de datos?

Cita:
Iniciado por kalanikochs Ver Mensaje
no entiendo amigo :S
facil que tienes que reacer parte de tu codigo, revisa bien lo que te explico Chronos682
__________________
[email protected]
HITCEL
  #6 (permalink)  
Antiguo 21/07/2015, 09:35
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: ¿hacer esto es posible en base de datos?

esto:
Código PHP:
Ver original
  1. while ($fila = mysql_fetch_array($resultado)) {
  2.                 echo "<table style='border: solid 1px black;'><tr><th>cliente</th><th>cédula</th><th>telfono</th><th>mail</th><th>pedido</th><th>banco</th><th>medio</th><th>monto</th><th>estado</th><th>municipio</th><th>zonapostal</th><th>ciudadpueblo</th></tr>";
  3.                 echo "<tr><td> $fila[cliente] </td> <td> $fila[cedula] </td> <td> $fila[telefono] </td> <td> $fila[mail] </td> <td> $fila[pedido] </td> <td> $fila[emisor] </td> <td> $fila[medio] </td> <td> $fila[monto] </td> <td> $fila[estado] </td> <td> $fila[municipio] </td> <td> $fila[zonapostal] </td> <td> $fila[ciudadpueblo] </td></tr> <br>";

ponlo asi:
Código PHP:
Ver original
  1. <?php
  2.                
  3.  echo "<table style='border: solid 1px black;'><tr><th>cliente</th><th>cédula</th><th>telfono</th><th>mail</th><th>pedido</th><th>banco</th><th>medio</th><th>monto</th><th>estado</th><th>municipio</th><th>zonapostal</th><th>ciudadpueblo</th></tr>";
  4.  
  5.  
  6. while ($fila = mysql_fetch_array($resultado))
  7.  
  8. {
  9.                 echo "<tr><td>". $fila['cliente']." </td> <td>". $fila['cedula']." </td> <td>". $fila['telefono']." </td> <td>". $fila['mail']." </td> <td>". $fila['pedido']." </td> <td>". $fila['emisor']." </td> <td>". $fila['medio']." </td> <td>". $fila['monto']." </td> <td>". $fila['estado']." </td> <td>". $fila['municipio']." </td> <td>". $fila['zonapostal']." </td> <td>". $fila['ciudadpueblo']." </td></tr>";
  10.  
  11. }
  12.  
  13.                 echo "</table>";
  14.  
  15. ?>
__________________
[email protected]
HITCEL
  #7 (permalink)  
Antiguo 21/07/2015, 09:41
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: ¿hacer esto es posible en base de datos?

Y aquí es donde debes insertar el input checkbox:

Cita:
Iniciado por xfxstudios Ver Mensaje
Código PHP:
Ver original
  1. <?php
  2.                
  3.  echo "<table style='border: solid 1px black;'><tr><th>cliente</th><th>cédula</th><th>telfono</th><th>mail</th><th>pedido</th><th>banco</th><th>medio</th><th>monto</th><th>estado</th><th>municipio</th><th>zonapostal</th><th>ciudadpueblo</th></tr>";
  4.  
  5.  
  6. while ($fila = mysql_fetch_array($resultado))
  7.  
  8. {
  9.                 echo "<tr><td>####Aqui va el input checkbox como te lo puse en el codigo####</td><td>". $fila['cliente']." </td> <td>". $fila['cedula']." </td> <td>". $fila['telefono']." </td> <td>". $fila['mail']." </td> <td>". $fila['pedido']." </td> <td>". $fila['emisor']." </td> <td>". $fila['medio']." </td> <td>". $fila['monto']." </td> <td>". $fila['estado']." </td> <td>". $fila['municipio']." </td> <td>". $fila['zonapostal']." </td> <td>". $fila['ciudadpueblo']." </td></tr>";
  10.  
  11. }
  12.  
  13.                 echo "</table>";
  14.  
  15. ?>
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #8 (permalink)  
Antiguo 21/07/2015, 09:42
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: ¿hacer esto es posible en base de datos?

con el form seria asi:
Código PHP:
Ver original
  1. <?php
  2.  
  3.     echo "<form>";
  4.     echo "<table style='border: solid 1px black;'><tr><th>Seleccion</th><th>cliente</th><th>cédula</th><th>telfono</th><th>mail</th><th>pedido</th><th>banco</th><th>medio</th><th>monto</th><th>estado</th><th>municipio</th><th>zonapostal</th><th>ciudadpueblo</th></tr>";
  5.  
  6. while ($fila = mysql_fetch_array($resultado))
  7. {
  8.  
  9.  
  10.                 echo "<tr><td><input type='checkbox' name='numero[]' value='".$fila['id']."'/></td><td>". $fila['cliente']." </td> <td>". $fila['cedula']." </td> <td>". $fila['telefono']." </td> <td>". $fila['mail']." </td> <td>". $fila['pedido']." </td> <td>". $fila['emisor']." </td> <td>". $fila['medio']." </td> <td>". $fila['monto']." </td> <td>". $fila['estado']." </td> <td>". $fila['municipio']." </td> <td>". $fila['zonapostal']." </td> <td>". $fila['ciudadpueblo']." </td></tr>";
  11.  
  12. }
  13.                 echo "</table>";
  14.     echo    "<input type='submit' value='enviar'/>";
  15.     echo "</form>";
  16. ?>

aunque no te va a servir de mucho, seria mejor que cada valor mostrado este en un input y que sea readonly de esta manera los puedes agrupar en arrays y almacenarlos en tu base de datos
__________________
[email protected]
HITCEL

Etiquetas: bases-de-datos-general, mysql, posible, select, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:16.