Beste leden,
De titel is misschien een beetje vaag, maar ik wist niet hoe ik dit het beste kon omschrijven.
Voor onze webshop kopen wij in bij een groothandel wat nu veel handmatig werk is. Nu hebben wij een alternatieve methode om via CURL al onze producten die geen voorraad meer hebben alvast in de winkelwagen van de groothandel te zetten. Dit is overigens met goedkeuring van de groothandel, welke helaas geen plannen heeft om hier een API voor te ontwikkelen.
Nu log in ik met CURL, zet de data in een COOKIEJAR en deze gebruik ik weer om de producten toe te kunnen voegen aan de winkelwagen. Helaas gaat er bij het toevoegen iets mis aangezien ze na de POST een GET redirect doen wel blijkbaar in hun code staat als /addtocart.php?variabellen.. Nu zet ons systeem voor de /addtocart.php actie onze url in plaats van de url van de leverancier (wat opzich logisch is).
De code die we gebruiken:
Kent CURL een variabel om in te stellen dat de url die gebruikt moet worden die van de groothandel is? Heeft iemand hier ervaring mee?
Erwin
De titel is misschien een beetje vaag, maar ik wist niet hoe ik dit het beste kon omschrijven.
Voor onze webshop kopen wij in bij een groothandel wat nu veel handmatig werk is. Nu hebben wij een alternatieve methode om via CURL al onze producten die geen voorraad meer hebben alvast in de winkelwagen van de groothandel te zetten. Dit is overigens met goedkeuring van de groothandel, welke helaas geen plannen heeft om hier een API voor te ontwikkelen.
Nu log in ik met CURL, zet de data in een COOKIEJAR en deze gebruik ik weer om de producten toe te kunnen voegen aan de winkelwagen. Helaas gaat er bij het toevoegen iets mis aangezien ze na de POST een GET redirect doen wel blijkbaar in hun code staat als /addtocart.php?variabellen.. Nu zet ons systeem voor de /addtocart.php actie onze url in plaats van de url van de leverancier (wat opzich logisch is).
De code die we gebruiken:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| <?php $aData = array('sCode' => 'productcode', 'sAantal' => 1, 'sParam' => '', 'submit1' => 'Toevoegen'); $ch = curl_init(); curl_setopt($ch, CURLOPT_COOKIEJAR, "cookies.txt"); curl_setopt($ch, CURLOPT_COOKIEFILE, "cookies.txt"); curl_setopt($ch, CURLOPT_URL, "http://www.website.nl/cartadd.asp"); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $aData); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($ch); curl_close($ch); print_r($result); ?> |
Kent CURL een variabel om in te stellen dat de url die gebruikt moet worden die van de groothandel is? Heeft iemand hier ervaring mee?
Erwin