Pasar variables en la URL OScommerce

Es sobre oscommerce desarrollado en php
En el sitio
http://osc3.template-help.com/osc_21243/product_info.php?cPath=1&products_id=1
Podrás ver que hay un form que enviar dos datos a la acción add_product:
esos dos tipos de datos son= product_id ( que producto es ) y id[3]  / id[4]( que son atributos )
Pues bien, yo lo que necesito es pasar todo eso en una url
algo como shop.com/product_info.php?cPath=1_9&products_id=26&action=add_product&products_id=26&id[3]=9
¿Cómo seria la sintaxis de esa url?
¿Es posible hacerlo por una URL?
Respuesta
1
La sintaxis de la URL es totalmente correcta.
Para recuperar el valor, deberías hacer algo como:
<?php
echo $_GET["product_id"];
echo $_GET["id"][3];
?>
pERDONA PERO por un lado, no se mucho de php y por el otro, yo no puedo modificar el resto de los scripts del sitio
solo necesito saber y poder probar una URL que haga el mismo efecto que entrar en
http://osc3.template-help.com/osc_21243/product_info.php?cPath=1&products_id=1 , elegir memoria 16 modelo premium y apretar AÑADIR A CESTA
¿Me podrías decir ( y puedes irlo probando ahí mismo en ese sitio ) la URL EXACTAMENTE CUAL SERIA EN ESTE CASO?
Insisto puedes probarlo allí mismo y si tu url suma un producto con sus atributos a la cesta de la compra, es que funciona.
Un saludo y mil gracias
Creo que lo que buscas es:
http://osc3.template-help.com/osc_21243/shopping_cart.php?id[3]=6&id[4]=3
¿A ti te funciona?
Es que yo pongo esa ruta en mi barra de direcciones y solo me lleva al carrito de la compra pero no agrega ni un producto ni mucho menos especifica sus atttributos
Tienes razón, le faltaba una parte. Esta debería funcionar:
http://osc3.template-help.com/osc_21243/product_info.php?cPath=1&products_id=1 &action=add_product&id[3]=6&id[4]=3
No, o al menos en mi ordenador/ navegador no va
Pero la prueba que hago yo la puedes hacer tu mismo
Yo no administro ese sitio, Simplemente pego la ruta que tu me dices para ver si hace lo que se necesita que haga
Mi sitio es idéntico ( no el diseño pero si el funcionamiento ) pero esta en local y por lo tanto no tengo linkls para que lo veas
Pero ese sitio que te doy de referencia esta funcionando y la url que me des, yo la pego en la barra de direcciones del ie7 y cruzo los dedos a ver si el producto aparece en el carrito de la compra de ese sitio.
Yo lo he probado en Mozilla Firefox y funciona, pegando la URL claro.
Lo que ocurre es que seguramente hay más cosas detrás. Porque en la URL no hay suficiente información. Casi seguro que se almacena información en una coockie de usuario, para saber al menos cual es su cesta.
Si es así, no te funcionará nunca.
Lo que no entiendo es porque necesitas hacer esto tan poco habitual.
pues yo tengo firefox 3.0.2 y pego la url
http://osc3.template-help.com/osc_21243/product_info.php?cPath=1&products_id=1 &action=add_product&id[3]=6&id[4]=3
y tambien
http://osc3.template-help.com/osc_21243/product_info.php?cPath=1&products_id=1&action=add_product&id[3]=6&id[4]=3
que es que habia un espacio enbtre 1 y &action que no se si estaba eso mal
tambien lo probe en ie7
Lo voy a necesitar hacer de esa manera porque quiero que la hoja de productos en vez de ser la original, sea una película swf en la que se maneje con mauor interactividad los atributos ( yo venderé camisetas y quiero que al cambiar color de fondo, color del diseño, talla etc, el usuario vea los cambios en esa película de flash que yo ya ala tengo hecha y va genial
De hecho yo puedo agregar un producto al carro a través del sig scriptde actionscript 2.0:
function(){
products_id="24";
id[3]="9";//esto no lo conserva(supongo ke por el corchete []
getURL("http://www.dominio.com/product_info.php?products_id=24&action=add_product", "", "POST");
}
Lo que no consigo es pasar los atributos - id[3]=9 en este caso.
Por lo que pensé en directamente tirar una url que yo en flash la armo en base a los parámetros que el usuario haya ido eligiendo en mi entorno flash ( talla, color, diseño )
y con todo eso generar una url de este tipo
dominio.com/script.php&action=laquesea&id[3]=9&id[4]=7 y asi
se entiende?
Se entiende el problema. Lo que ocurre es que, como ya te he comentado, lo más probable es que haya alguna coockie implicada. Cuando a ti y a mi nos ha funcionado alguna vez es porque esa coockie se había inicializado.
Seguro que es así, porque no hay información suficiente en la URL para realizar la operación, como el identificador de la cesta de la compra. Así que dudo mucho que se pueda encontrar una solución única y exclusivamente a través de la url.
Seguramente se habría de modificar el código de alguna manera. Si tienes el código, busca la palabra 'cookie' para confirmarlo. Si existe, es que seguramente tengo razón.
Que pena porque, por un lado, yo en flash SI pude sumar un prod, aunque perder sus atributos.
Y por otro lado, este código suelto en un html que solo contiene esto, hace el proceso ok enviando prod-id y atributos
<form name="cart_quantity" action="http://www.zebravinilos.com/vinilos-tienda/product_info.php?cPath=1_9&products_id=26&action=add_product" method="post"><input type="hidden" name="products_id" value="26">
<input type="hidden" name="id[3]" value="9">
<input type="image" src="includes/languages/espanol/images/buttons/button_add_to_cart1.gif" border="0" alt="Añadir a la Cesta" title=" Añadir a la Cesta ">
Te propongo que más que seguir haciendo pruebas, ¿por qué no me envías el código de product_info.php?
Viendo el código te podré decir más fácilmente lo que se puede hacer y lo que no.
Perfecto
puedes bajarlo de http://www.javierdiez.es/probando-flash-y-oscommerce.rar
Te agradezco muchísimo tu ayuda, yo fui experto de corel durante muchos años en este mismo sitio, (cuando era color azul je je) y conozco y valoro tu esfuerzo
Muchas gracias de corazón
Para empezar veo en los ficheros que se usa $_POST y eso hace que no se pueda enviar la información por la URL.
Quizás cambiando los $_POST por $_REQUEST se pueda conseguir.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas