Ayuda con Php

Publicado en 'Programación' por lovepanda789, 13 Abr 2014.





  1. lovepanda789

    lovepanda789 Miembro nuevo

    Registro:
    13 Abr 2014
    Mensajes:
    1
    Likes:
    0




    Ante todo buenas quisiera pedir su ayuda veran lo admito me la pase de ocioso y deje las cosas para ultimo minuto estudio en un instituto y me dejaron un trabajo final para mi 5 ciclo xD asi que me la eh pasado mi viernes y sabados en casa programando( o lo que yo llamo programar xD atinandole al azar xD)
    la cosa es tengo 2 problemas y quisiera saber si me ayudarian ya todo esta listo solo no entiendo o de las separatas que tengo no se porque me sale un error y en el otro no se como hacerlo

    el primero
    este es un codigo claramente es de carritos de compra
    <?
    if(!$_GET['bu'])
    {
    $id=$_GET['id'];
    $miconexion->consulta("select * from productos where prod_id=$id and prod_pas<>1");
    $row = mysql_fetch_array($miconexion->Consulta_ID);
    $nombre =$row['prod_nom'];
    $precio =$row['prod_precio'];
    $cantidad=1;

    $_SESSION['cliente']['carrito'][]=array('id'=>$id,'nombre'=>$nombre,'precio'=>$precio,'cant'=>$cantidad);
    }
    ?>
    <div>
    <table width="100%" cellpadding="0" cellspacing="0" border="0">
    <tr>
    <td align="center">
    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    <tr>
    <td valign='top'>
    <div id='divResultado'>
    <table border='0' cellspacing='2' cellpadding='2' width='100%'>
    <tr class="titulo_campos">
    <td>Producto</td><td>Precio</td><td>Can.</td><td>SubTotal</td><td>Elim</td>
    </tr>
    <?
    $total=0;
    //antes los 0 eran 1
    for($i=0;$i<count($_SESSION['cliente']['carrito']);$i++)
    {
    $subtotal=1;
    foreach ($_SESSION['cliente']['carrito'][$i] as $k => $v)
    {
    if($k=='id')
    {
    $v;
    }
    if($k=='nombre')
    {
    echo"<tr class='datos_db'><td>$v</td>";
    }
    if($k=='precio')
    {
    echo"<td align='center'>$v</td>";
    $subtotal*=$v;
    }
    if($k=='cant')
    {
    $subtotal*=$v;
    $total+=$subtotal;
    echo"<td align='center'><input type='text' name='cant$i' value='$v' size='2'></input>
    </td>
    <td align='center'>".number_format(round($subtotal,2), 2, '.', ' ')."</td>";
    }
    }
    echo"<td align='center' ><a href='#'>Eliminar</a></td></tr>";
    }
    ?>
    <tr>
    <td colspan='5' align='right'>
    <? echo "<span class='carrito_b'>TOTAL A PAGAR: $. ".number_format(round($total,2), 2, '.', ' ')." </span>"; ?>
    </td>
    </tr>
    <tr>
    <td height='20'>
    </td>
    </tr>
    <tr>
    <td colspan='3' align='center' width='50%'>
    <a href="index.php?menu=productos">Elegir otro Producto</a>
    </td>
    <td colspan='2' align='center' width='50%'>
    <a href="index.php?menu=realiza_pedido">Realizar Pedido</a>
    </td>
    </tr>
    </table>
    </div>
    </td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </div>

    el problema que tengo es que me sale un error cuando entro con un usuario y trato de ver su carrito de compras me sale
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\proyectoweb\carrito.php on line 6

    intente con un if(!isset a la SESSION['cliente']['carrito'] pero cuando seleccionaba un producto no salia sus datos y si le quitaba la negacion no seleccionaba ni agregaba nada ya lo dije antes eh estado atinando xD pero bueno no se que esta mal me han dicho que debo agregar un if pero no entiendo donde ni como :cray:

    2do problema aqui no entiendo porque estuve enfermo y la verdad tambien fue culpa mia por no intentar ponerme al dia

    se supone que en el carrito de compra aparece

    nombre precio cantidad y sale eliminar
    se supone que cuando hago click en eliminar debe eliminarse esa como decirlo peticion o toda esa linea de producto pero no se que tengo que hacer

    echo"<td align='center' ><a href='#'>Eliminar</a></td></tr>";

    ya que no tengo las separatas de esa clase estuve viendo en google y dice que debo utilizar el unset() pero eh estado probando toda la mañana hasta artarme y no se como da tengo que crear otra pagina php ? para eliminar o que

    P.S:Todo esta en xamp como base de datos asi que por favor ayudenme solo tengo esos 2 problemas si pudieran ayudarme porque sinceramente estoy apunto de volverme loco :plop: y jamas volvere a dejar las cosas para ultimo minuto ._.

    en el spoiler sale $mi conexion asi pero en realidad esta asi $miconexion no se porque sale un espacio ahi xD
     


  2. xorcista

    xorcista Miembro frecuente

    Registro:
    24 Mar 2013
    Mensajes:
    54
    Likes:
    4
    Hola, te dejo algo simple antes de ir a almorzar... el problema número 1 es por que no llega a conectar a la base de datos (dejaste un espacio en la variable):

    $miconexion->consulta("select * from productos where prod_id=$id and prod_pas<>1");
    $row = mysql_fetch_array($micone xion->Consulta_ID);

    2. Aquí: echo"<td align='center' ><a href='#'>Eliminar</a></td></tr>"; no estas haciendo nada, podrias probar:
    echo"<td align='center' ><a href='?ideliminar=[AQUI EL ID DEL PRODUCTO]'>Eliminar</a></td></tr>";

    y poner en el mismo archivo :
    if(isset($_GET[ideliminar])){
    mysql_query("delete from productos WHERE id='".$_GET["ideliminar"]."'");
    echo "Se Elimino Con Exito";
    }