Foros del Web » Programando para Internet » PHP »

insertar nueva variable en db de script prefabricado

Estas en el tema de insertar nueva variable en db de script prefabricado en el foro de PHP en Foros del Web. Hola gente, hace 2 dias me vengo rompiendo la cabeza con un script que quiero modificar y no puedo. Me refiero al [URL="http://www.ajaxshake.com/en/JS/236571/flying-to-basket-effect-using-javascript-and-jquery-flybasket.html"]jbasket[/URL] es para ...
  #1 (permalink)  
Antiguo 18/02/2013, 00:22
 
Fecha de Ingreso: septiembre-2009
Mensajes: 39
Antigüedad: 15 años, 2 meses
Puntos: 0
insertar nueva variable en db de script prefabricado

Hola gente, hace 2 dias me vengo rompiendo la cabeza con un script que quiero modificar y no puedo.
Me refiero al [URL="http://www.ajaxshake.com/en/JS/236571/flying-to-basket-effect-using-javascript-and-jquery-flybasket.html"]jbasket[/URL] es para hacer un carrito de compras, en cuanto a php y html usa el archivo comprar.html cuyo codigo importante es
Código PHP:
<div id="contentWrapLeft">
                <div class="productWrap">
                    <div class="productImageWrap productPriceWrapRight" id="productImageWrapID_1">
                        <a href="inc/functions.php?action=addToBasket&productID=1" onClick="return false;"><img src="images/product1.jpg" alt="Product1" id="featuredProduct_1" /></a>
                    </div>
                    <div class="productNameWrap">
                        Producto 1
                    </div>
                    <div class="productPriceWrap">
                        <div class="productPriceWrapLeft">
                            $15
                        </div>
                        
                    </div>
                </div>
                <div class="productWrap">
                    <div class="productImageWrap productPriceWrapRight" id="productImageWrapID_2">
                        <a href="inc/functions.php?action=addToBasket&productID=2" onClick="return false;"><img src="images/product2.jpg" alt="Product2"  id="featuredProduct_2"/></a>
                    </div>
                    <div class="productNameWrap">
                        Producto 2                    </div>
                    <div class="productPriceWrap">
                        <div class="productPriceWrapLeft">
                            $70
                        </div>
                        
                    </div>
                </div>
                <div class="productWrap">
                    <div class="productImageWrap productPriceWrapRight" id="productImageWrapID_3">
                        <a href="inc/functions.php?action=addToBasket&productID=3" onClick="return false;"><img src="images/product3.jpg" alt="Product3" id="featuredProduct_3" />
                    </a></div>
                    <div class="productNameWrap">Producto 3 </div>
                    <div class="productPriceWrap">
                        <div class="productPriceWrapLeft">
                            $90
                        </div>
                        
                    </div>
                </div>

        </div>
        
        
        <div id="contentWrapRight">
            <div id="basketWrap">
                <div id="basketTitleWrap">
                    Tu Compra <span id="notificationsLoader"></span>
                </div>
                <div id="basketItemsWrap">
                    <ul>
                    <li></li>
                    <?php getBasket(); ?>
                    </ul>
                </div>
            </div>            
        </div>
lo que hace ese código es mostrar 3 productos que con la ayuda de jquery se pueden seleccionar y tambien usa el archivo functions.php que consta de lo siguiente

Código PHP:
<?php require("db.php"); ?>
<?php

session_start
();
$sessionID $_COOKIE['PHPSESSID'];


if(
$_POST['action'] != '' || $_GET['action'] != '') {
    if(
$_POST['action'] == '')
    {
        
$action     $_GET['action'];
        
$productID    $_GET['productID'];
        
$noJavaScript 1;
    } else {
        
$action     $_POST['action'];
        
$productID    $_POST['productID']; 
        
$noJavaScript 0;
    }
}
    
if (
$action == "addToBasket"){

    
$productInBasket     0;
    
$productTotalPrice    0;

    
$query  "SELECT * FROM products WHERE productID = " $productID;
    
$result mysql_query($query);
    
$row mysql_fetch_array$result );

    
$productPrice         $row['productPrice'];    
    
$productName        $row['productName'];    
    

    
$query "INSERT INTO baskets (productID, productPrice, basketSession, nombre) VALUES ('$productID', '$productPrice', '$sessionID', '$nombre')";
    
mysql_query($query) or die('Error, insert query failed');    

    
$query  "SELECT * FROM baskets WHERE productID = " $productID " AND basketSession = '" $sessionID "'";
    
$result mysql_query($query) or die(mysql_error());;
    
    while(
$row mysql_fetch_array($resultMYSQL_ASSOC))
    {
        
$totalItems     $totalItems 1;
        
$productTotalPrice     $productTotalPrice $row['productPrice'];
    }
    
    if (
$noJavaScript == 1) {
        
header("Location: ../index.php");
    } else {
        echo (
'<li id="productID_' $productID '"><a href="inc/functions.php?action=deleteFromBasket&productID=' $productID '" onClick="return false;"><img src="images/delete.png" id="deleteProductID_' $productID '"></a> ' $productName '(' $totalItems ' items) - $' $productTotalPrice '</li>');
    }

}


if (
$action == "deleteFromBasket"){
    
    
$query "DELETE FROM baskets WHERE productID = " $productID " AND basketSession = '" $sessionID "'";
    
mysql_query($query) or die('Error, delete query failed');
        
    if (
$noJavaScript == 1) {
        
header("Location: ../index.php");
    }    
}


function 
getBasket(){
    
    
session_start();
    
$sessionID $_COOKIE['PHPSESSID'];
    
    
$query  "SELECT * FROM baskets WHERE basketSession = '" $sessionID "' GROUP BY productID ORDER By basketID DESC";
    
$result mysql_query($query);
    
//echo $query;
    
    
while($row mysql_fetch_array($resultMYSQL_ASSOC))
    {
        
        
$query2  "SELECT * FROM products WHERE productID = " $row['productID'];
        
$result2 mysql_query($query2);
        
$row2 mysql_fetch_array$result2 );
    
        
$productID             $row2['productID'];
        
$productPrice         $row2['productPrice'];    
        
$productName        $row2['productName'];    
    
        
$query2  "SELECT COUNT(*) AS totalItems FROM baskets WHERE basketSession = '" $sessionID "' AND productID = " $productID;
        
$result2 mysql_query($query2);
        
$totalItems $row2['totalItems'];
        
$basketText $basketText '<li id="productID_' $productID '"><a href=inc/functions.php?action=deleteFromBasket&productID=' $productID ' onClick="return false;"><img src="images/delete.png" id="deleteProductID_' $productID '"></a> ' $productName '(' $totalItems ' items) - $' . ($totalItems $productPrice) . '</li>';
        
    }
    echo 
$basketText;
}
    

?>
este archivo lo que hace es insertar los datos de los productos elegidos, la tabla donde se inserta, contiene:
*basketID
*basketSession
*productID
*productPrice

yo le agregué un item más llamado
*nombre

ya que eso es lo que necesito... que antes de ingresar al html que subi más arriba, muestre un simple form que tome la variable nombre de la persona, y me la inserte en la base de datos, entonces todas las entradas de la db que tengan la misma session en basketsession, que tambien contenga el nombre de la persona que está haciendo el pedido, entonces he probado de recibir el formulario tanto en el comprar.php como en el functions.php con el codigo
Código PHP:
<?php
$nombre 
$_POST["nombre"]; 
?>
pero no lo recibe nunca, de hecho si en el functions.php hago una constante por ejemplo $nombre = 13;
me inserta perfectamente en la bd el 13 en la columna nombre, pero si lo quiero recibir por parámetro como una variable venida del formulario, no me ingresa nada :(

se que les hice un quilombo, pero bueno, si se quieren tomar un tiempo leyendo e intentar ayudarme en esto que calculo debe ser muy simple, ya que a la constante me la envia, les agradeceré. Saludos.

Última edición por MiguelNajdorf; 18/02/2013 a las 14:53

Etiquetas: formulario, html, mysql, prefabricado, select, sql, tabla, variable
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 12:23.