Foros del Web » Programando para Internet » PHP »

esto sirve así?

Estas en el tema de esto sirve así? en el foro de PHP en Foros del Web. tengo este script y BD y me da este error: que hice mal? seguramente todo ya se el dominio es www.polopositivocba.com.ar/carrito.php Fatal error: Call to ...
  #1 (permalink)  
Antiguo 18/06/2005, 15:17
 
Fecha de Ingreso: mayo-2004
Mensajes: 903
Antigüedad: 13 años, 6 meses
Puntos: 4
esto sirve así?

tengo este script y BD y me da este error: que hice mal? seguramente todo ya se el dominio es www.polopositivocba.com.ar/carrito.php

Fatal error: Call to undefined function: () in /home/polocba/domains/polopositivocba.com.ar/public_html/carrito.php on line 5

subí una página asi:

Código PHP:
<?
include("shoppingcart.php");
$cart = new Cart;
$mysql_link mysql_connect("localhost""polocba""123456");
$mysql_select_db("inventory""shopping"$mysql_link/* heh, use whatever database name you put the 2 tables under in place of kmartShopper */
?>
/* call functions like $cart->add_item and such, see the code. */
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

</body>
</html>

y en el servidor subi este php:

Código PHP:
<?
/* shoppingcart.php
*
*
*/
if(!$session && !$scid) {

$session md5(uniqid(rand()));

SetCookie("scid""$session"time() + 14400);
/* last number is expiration time in seconds, 14400 sec = 4 hrs */

class Cart {
function 
check_item($table$session$product) {
$query "SELECT * FROM $table WHERE session='$session' AND product='$product' ";
$result mysql_query($query);

if(!
$result) {
return 
0;
}

$numRows mysql_num_rows($result);

if(
$numRows == 0) {
return 
0;
} else {
$row mysql_fetch_object($result);
return 
$row->quantity;
}

}
function 
add_item($table$session$product$quantity) {
$qty $this->check_item($table$session$product);
if(
$qty == 0) {
$query "INSERT INTO $table (session, product, quantity) VALUES ";
$query .= "('$session', '$product', '$quantity') ";
mysql_query($query);
} else {
$quantity += $qty;
$query "UPDATE $table SET quantity='$quantity' WHERE session='$session' AND ";
$query .= "product='$product' ";
mysql_query($query);
}
}

function 
delete_item($table$session$product) {
$query "DELETE FROM $table WHERE session='$session' AND product='$product' ";
mysql_query($query);
}

function 
modify_quantity($table$session$product$quantity) {
$query "UPDATE $table SET quantity='$quantity' WHERE session='$session' ";
$query .= "AND product='$product' ";
mysql_query($query);
}

function 
clear_cart($table$session) {
$query "DELETE FROM $table WHERE session='$session' ";
mysql_query($query);
}
function 
cart_total($table$session) {
$query "SELECT * FROM $table WHERE session='$session' ";
$result mysql_query($query);
if(
mysql_num_rows($result) > 0) {
while(
$row mysql_fetch_object($result)) {
$query "SELECT price FROM inventory WHERE product='$row->product' ";
$invResult mysql_query($query);
$row_price mysql_fetch_object($invResult);
$total += ($row_price->price $row->quantity);
}
}
return 
$total;
}

function 
display_contents($table$session) {
$count 0;
$query "SELECT * FROM $table WHERE session='$session' ORDER BY id ";
$result mysql_query($query);
while(
$row mysql_fetch_object($result)) {
$query "SELECT * FROM inventory WHERE product='$row->product' ";
$result_inv mysql_query($query);
$row_inventory mysql_fetch_object($result_inv);
$contents["product"][$count] = $row_inventory->product;
$contents["price"][$count] = $row_inventory->price;
$contents["quantity"][$count] = $row->quantity;
$contents["total"][$count] = ($row_inventory->price $row->quantity);
$contents["description"][$count] = $row_inventory->description;
$count++;
}
$total $this->cart_total($table$session);
$contents["final"] = $total;
return 
$contents;

}

function 
num_items($table$session) {
$query "SELECT * FROM $table WHERE session='$session' ";
$result mysql_query($query);
$num_rows mysql_num_rows($result);
return 
$num_rows;
}

function 
quant_items($table$session) {
$quant 0;
$query "SELECT * FROM $table WHERE session='$session' ";
$result mysql_query($query);
while(
$row mysql_fetch_object($result)) {
$quant += $row->quantity;
}
return 
$quant;
}
}
?>

con estas dos tablas en sqlque subi por el phpmyadmin:


# Table structure for table 'inventory'
#
CREATE TABLE inventory (
product tinytext NOT NULL,
quantity tinytext NOT NULL,
id int(4) DEFAULT '0' NOT NULL auto_increment,
description tinytext NOT NULL,
price float(10,2) DEFAULT '0.00' NOT NULL,
category char(1) DEFAULT '' NOT NULL,
KEY id (id),
PRIMARY KEY (id),
KEY price (price)
);

#
# Table structure for table 'shopping'
#
CREATE TABLE shopping (
session tinytext NOT NULL,
product tinytext NOT NULL,
quantity tinytext NOT NULL,
card tinytext NOT NULL,
id int(4) DEFAULT '0' NOT NULL auto_increment,
KEY id (id),
PRIMARY KEY (id)
);

Última edición por mvlsistemas; 20/06/2005 a las 10:11
  #2 (permalink)  
Antiguo 19/06/2005, 03:10
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 14 años, 4 meses
Puntos: 0
Quítale el $ a $mysql_select_db, déjalo en mysql_select_db.

Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
  #3 (permalink)  
Antiguo 19/06/2005, 03:15
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Quitale el "$" y agregale un ";" al final de $mysql_select_db().

Cuando coloques código se te agradecería utilizarás las etiquetas correspondiente para colorearlo y visualizarlo bien.. se traduce en ayudarte mejor: http://forosdelweb.com/misc.php?do=bbcode#code

Igual sería bueno que lo compactarás... ve que el mensaje te dice en qué línea está el error (5 en tu caso)... entonces mostrar el código que "redondea" dicha línea... por ejemplo, en tu caso hubieses podido mostrar solo
Código PHP:
<?
include("shoppingcart.php");
$cart = new Cart;
$mysql_link mysql_connect("localhost""polocba""123456");
$mysql_select_db("inventory""shopping"$mysql_link/* heh, use whatever database name you put the 2 tables under in place of kmartShopper */
?>
.. ve que, de cierta forma está agrupado...

Por último... cuando desconoscas una función consultala en www.php.net (parte superior derecha)...

Solo comentarios para darle buen uso a el foro... será benéfico para tí pués sería más fácil ayudarte...

Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #4 (permalink)  
Antiguo 19/06/2005, 09:36
 
Fecha de Ingreso: mayo-2004
Mensajes: 903
Antigüedad: 13 años, 6 meses
Puntos: 4
gracias a los dos y pido disculpas por mi forma de postear códigos fué si querer queriendo.. es que no sabía realmente como hacerlo, gracias por sus respuestas y lo tendré en cuenta para la próxima.

>pero les puse todo para que lo vieran completo, para saber si todo estaba ok<

Pero igual me da el mismo error

Última edición por mvlsistemas; 19/06/2005 a las 09:55
  #5 (permalink)  
Antiguo 19/06/2005, 10:23
Avatar de webosiris
Moderador egiptólogo
 
Fecha de Ingreso: febrero-2002
Ubicación: Luxor, Egipto
Mensajes: 10.727
Antigüedad: 15 años, 10 meses
Puntos: 997
fijate que el nombre del usuario que le asignaste a la bd sea EXACTAMENTE el mismo... a veces al crear un usuario el host te pone un prefijo...
  #6 (permalink)  
Antiguo 19/06/2005, 17:34
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por mvlsistemas
Pero igual me da el mismo error
Por favor te pediría confirmaras eso... no debería de ser si haz hecho los cambias que se te dijeron. No digo que no deba de darte algún error, sino que, al menos, debería de ser distinto... los mismos mensajes te dicen en qué puedes estar mal así que, confirma si verdaderamente es el mismo error ú otro. Si es el último caso menciona cuál es exáctamente...

Acabo de ver otro error... en la misma línea, la misma función parecería que intentas seleccionar dos bases de datos... esto no pude ser.. ó es "inventori" ó "shopping" pero no las dos... si tubieses la necesidad de trabajar con dos BD te recomendaría mejor hicieses uso de la función mysql_db_query() directamente...

... ahora, te recomendaria editaras el mensaje original para iluminar el código... si de verdad quieres que alguien vea tu código ayuda a que sea visible... creeme que es cansado leerlo así. si lo haces de una vez haz los cambios ...

Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #7 (permalink)  
Antiguo 20/06/2005, 10:27
 
Fecha de Ingreso: mayo-2004
Mensajes: 903
Antigüedad: 13 años, 6 meses
Puntos: 4
Hola jam1138, bueno ya edité el mensaje. este es un script que bajé y quiero implementar. ahora bién en donde lo saqué no tiene explicación alguna y sinceramente estoy intentando hacerlo funcionar ero me sigue dando este error:

Parse error: parse error, unexpected '(' in /home/polocba/domains/polopositivocba.com.ar/public_html/carrito.php on line 5

ahora bien, para un carrito y espero que esto le sirva a mas de uno¨:

1º debería hacer un formulario en donde esté por ej: el producto a comprar o listar si? con un botón enviar a> el formulario de compra o envío (yo prefiero envío para no complicar el tema con las formas de pago,etc.)
2º ahora bien ese botón que ación le predeterminamos, enviar formulario
Código PHP:
 <input type="submit" name="Submit" value="Enviar"
? y a donde?
3ºel archivo shopingcart lo subimos al servidor si?
4º esto lo ponemos en linea 1 sobre el head en la pagina carrito.php si? hasta ahi está bien?
Código PHP:
 <?
include("shoppingcart.php");
$cart = new Cart;
$mysql_link mysql_connect("localhost""polocba""123456");
$mysql_select_db("inventory""shopping"$mysql_link/* heh, use whatever database name you put the 2 tables under in place of kmartShopper */
?>
/* call functions like $cart->add_item and such, see the code. */
y con respecto a las BD si el script traía dos tablas una: inventory y la otra shopping -
5º estas dos tablas se pueden subir a una misma BD?
6º los productos del listado deben cargarse en la BD y donde?


bueno creo que con esto ya podremos hacer una base para sus sugerencias y de paso ojalá logremos hacer un carrito simple para los que tanto lo necesitamos. voy a probar la otra función que me recomendás, gracias.
  #8 (permalink)  
Antiguo 25/06/2005, 10:45
 
Fecha de Ingreso: mayo-2004
Mensajes: 903
Antigüedad: 13 años, 6 meses
Puntos: 4
osiris me fijé y eso está ok
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 18:10.