Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Geg1

#1
Hola a todos, tengo la siguiente lista de "Pedidos" en el cual tengo un campo llamado "Estado". lo que quiero hacer alli es que por defecto sea "No entregado"  y que de alguna forma pueda cambiarlo a "Entregado"... por defecto se setea el '0' y lo que hice fue lo siguiente (un boton "Entregado") el cual al presionarlo cambiaria el campo a '1' pero no lo hace...

Código (php) [Seleccionar]
<?php
mysql_pconnect
("localhost""root""");
mysql_select_db("gestorpedidos");
mysql_query("SET NAMES 'utf8'");

if(isset(
$_GET["accion"])){

    
$accion $_GET["accion"];
    
$id_pedido $_GET["id_pedido"];

    if (
$accion == "borrar")
    {
        
$consulta_cpedidos "DELETE FROM pedidos WHERE id_pedido =" .$id_pedido;
            
$resultado mysql_query($consulta_cpedidos);
     }
}  

if(isset(
$_GET["accion2"])){

    
$accion $_GET["accion2"];
    
$estado $_GET["estado"];

    if (
$accion == "modif")
    {
        
$consulta_cpedidos "UPDATE pedidos SET estado = '1' WHERE estado = '%s'"$estado;
            
$resultado mysql_query($consulta_cpedidos);
     }
}  

$consulta_cpedidos "SELECT * FROM pedidos INNER JOIN clientes ON pedidos.cliente_id = clientes.id_cliente INNER JOIN productos ON pedidos.producto_id = productos.id_producto";
$cpedidos mysql_query($consulta_cpedidos) or die(mysql_error());
$fila_cpedidos mysql_fetch_assoc($cpedidos);

?>


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="estilos.css">
<link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet">
<title>Lista de Pedidos</title>
</head>
<body>
<table width="980" border="0">
<tr><td class="lista2">Nº</td class="lista2"><td class="lista2">Fecha</td><td class="lista2">Cliente</td><td class="lista2">Producto</td><td class="lista2">Descripcion</td><td class="lista2">Precio</td></tr>
   <tr>
 <?php do { ?>
     <form action=listadepedido.php method=GET>
     <td align="center" class="lista" width="30"><?php echo $fila_cpedidos['id_pedido']; ?></td>
     <td class="lista" width="100"><?php echo $fila_cpedidos['fecha']; ?></td>
     <td class="lista" width="150"><?php echo $fila_cpedidos['nombre']; ?></td>
     <td class="lista" width="180"><?php echo $fila_cpedidos['producto']; ?></td>
     <td class="lista" width="500"><?php echo $fila_cpedidos['descripcion_p']; ?></td>
     <td class="lista" width="80"><?php echo $fila_cpedidos['precio']; ?></td>
     <td class="listaboton" width="80"><?php echo "<a href=listadepedido.php?accion=borrar&id_pedido=".$fila_cpedidos["id_pedido"].">Eliminar</a>" ?> </td>
     <td class="listaboton" width="100"><a href="editarpedido.php?editarpedido=<?php echo $fila_cpedidos['id_pedido']; ?>">Editar Fecha </a></td>
     <td class="listaboton" width="80"><?php echo "<a href=listadepedido.php?accion2=modif&estado=".$fila_cpedidos["estado"].">Entregado</a>" ?> </td>
     </form>
   </tr>
   <?php } while ($fila_cpedidos mysql_fetch_assoc($cpedidos)); ?>
</table>

</body>
</html>
<?php

mysql_free_result
($cpedidos);

?>





Alguna sugerencia para modificar el codigo?? Gracias a todos!
#2
Solucionado!! Disculpen
#3
Bases de Datos / Problema de Undefined Index
20 Marzo 2018, 19:04 PM
Tengo un pequeño problema con este codigo que muestra una lista de pedidos tomados por msyql:

<?php
mysql_pconnect
("localhost""root""");
mysql_select_db("gestorpedidos");
$query_cpedidos "SELECT * FROM pedidos INNER JOIN clientes ON pedidos.cliente_id = clientes.id_cliente INNER JOIN productos ON pedidos.producto_id = productos.id_producto";
$cpedidos mysql_query($query_cpedidos) or die(mysql_error());
$row_cpedidos mysql_fetch_assoc($cpedidos);
$totalRows_cpedidos mysql_num_rows($cpedidos);
$accion $_POST["accion"];

if (
$accion == "borrar")
{
$query_cpedidos "DELETE FROM pedidos WHERE id_pedido = $id_pedido";
  
$resultado mysql_query($query_cpedidos"gestorpedidos");
}

?>


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="estilos.css">
<link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet">
<title>Lista de Pedidos</title>
</head>
<body>
<table width="950" border="0">
<tr><td class="lista2">Nº</td class="lista2"><td class="lista2">Fecha</td><td class="lista2">Cliente</td><td class="lista2">Producto</td><td class="lista2">Descripcion</td><td class="lista2">Precio</td></tr>
    <tr>
  <?php do { ?>
      <form action=listadepedido.php method=POST>
      <td align="center" class="lista" width="30"><?php echo $row_cpedidos['id_pedido']; ?></td>
      <td class="lista" width="100"><?php echo $row_cpedidos['fecha']; ?></td>
      <td class="lista" width="120"><?php echo $row_cpedidos['nombre']; ?></td>
      <td class="lista" width="180"><?php echo $row_cpedidos['producto']; ?></td>
      <td class="lista" width="600"><?php echo $row_cpedidos['descripcion_p']; ?></td>
      <td class="lista" width="80"><?php echo $row_cpedidos['precio']; ?></td>
      <td width="100"><?php echo "<a href=listadepedido.php?accion=borrar&id_pedido=".$row_cpedidos["id_pedido"]."><input class=botonlista type=submit value=Cancelar></a>" ?> </td>
      </form>
    </tr>
    <?php } while ($row_cpedidos mysql_fetch_assoc($cpedidos)); ?>
</table>

</body>
</html>
<?php

mysql_free_result
($cpedidos);

?>



$accion = $_POST["accion"];


Ese código me tira el siguiente error:


CitarNotice: Undefined index: accion in C:\xampp\htdocs\FinalGaitan\listadepedido.php on line 8


Lo que intente hacer es un botón para borrar pedidos segun su ID. Pero no entiendo el porque de este error! Pido disculpas ya que soy novato y recien comienzo en el tema de PHP - MYSQL.
#4
He usado este codigo previamente y tampoco se muestran los nombres


<?php


$link 
mysqli_connect("localhost""root""");

mysqli_select_db($link"gestorpedidos");

$tildes $link->query("SET NAMES 'utf8'"); 

$result mysqli_query($link"SELECT * FROM clientes");

while (
$row_Cliente mysqli_fetch_array($result)){

$row_Cliente $row_Cliente["id_cliente"] ] =$row_Cliente["nombre"]; 
}

mysqli_free_result($result);

mysqli_close($link);

?>




<table width="712" border="0">
 <?php do { ?>
   <tr>
     <td width="129"><?php echo $row_Pedidos['id_pedido']; ?></td>
     <td width="100"><?php echo $row_Pedidos['fecha']; ?></td>
     <td width="107"><?php echo $row_Cliente[$row_Pedidos['cliente_id']]; ?></td>
     <td width="130"><?php echo $row_Pedidos['producto_id']; ?></td>
     <td width="160" widht="20">
     <td width="60" widht="20">&nbsp;</td>
   </tr>
   <?php } while ($row_Pedidos mysql_fetch_assoc($Pedidos) ); ?>
</table>



Pero deja el campo vacio :(
#5
Hola a todos! tengo la siguiente tabla:

<table width="712" border="0">
  <?php do { ?>
    <tr>
      <td width="129"><?php echo $row_Pedidos['id_pedido']; ?></td>
      <td width="100"><?php echo $row_Pedidos['fecha']; ?></td>
      <td width="107"><?php echo $row_Pedidos['cliente_id']; ?></td>
      <td width="130"><?php echo $row_Pedidos['producto_id']; ?></td>
      <td width="160" widht="20">
      <td width="60" widht="20">&nbsp;</td>
    </tr>
    <?php } while ($row_Pedidos mysql_fetch_assoc($Pedidos)); ?>
</table>



La cual muestra todos los pedidos ordenados. Pero yo quiero que el campo "cliente_id" relacionado con la tabla "clientes" muestre el campo "nombre" asociado a este id. lo mismo con el campo "producto_id"
hay alguna forma de mostrar los campos relacionados a estos id?

Gracias a todos!
#6
Ya lo resolvi!! El error estaba aqui:


<select name="producto_id" size="1">
        <option value="" >Seleccionar</option>
        <?php
do {  
?>

       [b] <option value="<?php echo $row_Productos['id_producto']?>"><?php echo $row_Productos['producto']?></option>
       [/b]



en donde esta ['producto'] estaba id_producto cuando uno es entero y el otro texto, entonces nunca iba a encontrar un entero en un texto jaja... se que no deberia usar el dreamweaver pero me gusta experimentar y creo que de estas cosas aprendo.. gracias por tu ayuda srWhiteSkull, gracias a ese comentario que me hiciste hacer en el codigo me abriste la cabeza y entendi el problema!!
#7
Cita de: srWhiteSkull en 15 Marzo 2018, 23:31 PM
Bueno, pues ahora comprueba la sentencia SQL que le estás pasando a la función(mysqli_query o lo que sea). En vez de pasar la sentencia a la función haz un echo $sentencia o como hayas llamado a la variable de la sentencia para ver que le estás enviando al servidor MySQL y luego copiala al portapapeles y pegala en la consola de MySQL. Todo este proceso se llama depurar.

hice esto:



y ne sale lo siguiente:

CitarLa sentencia que me da problemas es : INSERT INTO pedidos (id_pedido, cliente_id, producto_id, fecha) VALUES (12, 0, 0, '2018-03-27')

Veo que en el apartado Clientes y Producto, no me toma los valores que elijo y los deja en 0...

y lo que yo deduzco es que ese error ocurre porque al asignarle un 0 al cliente_id como no existe esa variable en id_cliente que es la llave primaria ocurre esto, puede ser?
#8
Cita de: srWhiteSkull en 15 Marzo 2018, 22:01 PM
Haz la misma operación desde la consola de MySQL con pura sentencias SQL. Pienso que el problema no lo estás teniendo en PHP sino en las propias sentencias o en los valores que defines para las claves.


en Mysql puedo insentar un registro de pedidos sin problema, ese error solo se da en el menu de php :(
#9
Cita de: srWhiteSkull en 15 Marzo 2018, 21:31 PM
Mira el valor de producto_id, depura mete un echo $_POST["producto_id"] o lo que sea para ver que valor le estás pasando. El error te indica que hay un problema con la clave extranjera producto_id de Pedidos. Asegúrate si estás creando o modificando un registro en Pedidos que la clave producto_id tiene o se le pasa un valor numérico entero (y existe como id en la tabla Producto)


Disculpa, soy muy nuevo en esto de PHP y MYSQL. Lo que hice fue insertar por defectos dos registros en la tabla "productos" los cuales mediante la relacion producto_id --> id_producto los conecto con la tabla pedidos..

Cual seria el error ahi? no logro captarlo
#10
Bases de Datos / AYUDA! Problema (Error 1452)
15 Marzo 2018, 20:53 PM
Hola a todos, tengo el siguiente problema al rellenar un formulario PHP que se conecta a una BD MYSQL:

El formulario:



el error que da:



Como relacione las tablas:



tabla "Productos":



tabla "Pedidos":




Por favor, he estado investigando y no encontre la solucion! Desde ya Gracias...