Toon posts:

[php]- cookie probleem met webshop

Pagina: 1
Acties:

Verwijderd

Topicstarter
De onderstaande functie moet 2 variabelen uitlezen uit een andere pagina.
$id en $aantal.
Deze functie moet tevens een cookie aanmaken en
de inhoud uitlijnen en kijken of de variabele al eerder in de cookie is gezet.
Probleem: cookie wordt niet verzonden

Er zijn geen error-messages, ook niet met :
error_reporting(E_ALL);

Wie ziet het probleem en heeft de oplossing?!
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?
 
error_reporting(E_ALL);

function AddProduct($id, $aantal) { 

   global $mandje; // Dit is het cookie 

   if ($mandje) { 
    
      if (ereg("$id\(([0-9]+)\)", $mandje, $regs)) { 

         /* Product bestaat al, het 'huidige' aantal 

            staat nu in $regs[1] */ 

         $aantal = $aantal + $regs[1]; 

         $mandje = ereg_replace( 

            "^(.*)($id)\([0-9]+\)(.*)$", 

            "\\1\\2($aantal)\\3", 

            $mandje); 

      } 

      else { 

         /* Artikel bestaat nog niet, dus gewoon 

            achteraan toevoegen. */ 

         $mandje .= "-$id($aantal)"; 

      } 

   } 

   else { 

      // Maak het koekje aan! 

      $mandje = "$id($aantal)"; 

   } 

   // Schrijf het cookie (bewaar het maximaal 1 jaar) 

   setcookie("mandje", "$mandje", time() + 31449600, "/");

} 


?> 
?>

Deze topic is al 2 keer gesloten, maar ben nog niks wijzer geworden.


Alvast bedankt 8-)

PS. Dit script komt van phpFreakz en daar is geen oplossing te vinden

  • Vulpecula
  • Registratie: April 2001
  • Laatst online: 08-09 22:13
Als ik thuis ben kijk ik wel ff.

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

Werkt het wel als je gewoon even direct een cookie set? Komt de functie wel zover? Wordt de functie uberhaupt aangeroepen? Moet je niet $HTTP_COOKIE_VARS['mandje'] gebruiken, als register_globals uitstaat misschien?

Probeer is wat meer :)

Verwijderd

1. Waarom gebruik je hiervoor geen sessions
2. Waarom gebruik je 1 cookie voor alle artikelen?

  • Sircuri
  • Registratie: Oktober 2001
  • Niet online

Sircuri

Volledig Appelig

als ik me niet vergis is je vorige post ook gelocked. Hopelijk heb je voor dit probleem wel genoeg geprobeerd alvorens te vragen hier.

Signature van nature


Verwijderd

Topicstarter
Op dinsdag 26 februari 2002 15:50 schreef eamelink het volgende:
Werkt het wel als je gewoon even direct een cookie set? Komt de functie wel zover? Wordt de functie uberhaupt aangeroepen? Moet je niet $HTTP_COOKIE_VARS['mandje'] gebruiken, als register_globals uitstaat misschien?

Probeer is wat meer :)
vragen
1 ja dat gaat gewoon...

2 nee de functie komt duidedelijk niet zover

3 het aaroepen wil waarschijnlijk niet lukken
heb je een tip ?

4 proberen we nu...

tnx. :)

Verwijderd

Topicstarter
Op dinsdag 26 februari 2002 15:50 schreef frankschers het volgende:
Als ik thuis ben kijk ik wel ff.
top !
ben benieuwd

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
* mbravenboer observeert een grotere medewerking en is daar blij mee :) .

De draad straalt gelijk een positievere sfeer uit. Als het zo daar gaat kan je topic rustig open blijven :) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


Verwijderd

Topicstarter
Op dinsdag 26 februari 2002 15:54 schreef Sircuri het volgende:
als ik me niet vergis is je vorige post ook gelocked. Hopelijk heb je voor dit probleem wel genoeg geprobeerd alvorens te vragen hier.
Stad en land afgezocht
ik weet niet waarom sommige mensen zo ongelooflijk moeilijk
doen..terwijl anderen gewoon geen problemen maken

  • Grum
  • Registratie: Juni 2001
  • Niet online
Even een enorm flauwe vraag. Maar hoe weet jij zo zeker dat et cookie NIET word verzonden ?

Heb je een tcp-dump gedaan en gecontroleerd of de data langskomt ?

Zo niet ? .. hoe ben je er dan zo zeker van ?

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

Laat es iets printen voordat je die cookie aanmaakt, als hij dat niet print, zal er ook geen cookie komen. :)

Verwijderd

Topicstarter
Op dinsdag 26 februari 2002 16:01 schreef Grum_ het volgende:
Even een enorm flauwe vraag. Maar hoe weet jij zo zeker dat et cookie NIET word verzonden ?

Heb je een tcp-dump gedaan en gecontroleerd of de data langskomt ?

Zo niet ? .. hoe ben je er dan zo zeker van ?
We kijken in de windows map cookies en checken of er een file instaat :)

Verwijderd

Topicstarter
Op dinsdag 26 februari 2002 16:04 schreef eamelink het volgende:
Laat es iets printen voordat je die cookie aanmaakt, als hij dat niet print, zal er ook geen cookie komen. :)
klopt... hij print niet....als de print opdracht tussen de functie staat. Misschien wordt ie niet goed aangeroepen.

wie o wie ?

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Als de functie niet wordt aangeroepen (en dus ook op de eerste statement als niets print) ligt je probleem heel ergens anders. Dat is toch vrij eenvoudig in te zien?

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


Verwijderd

Topicstarter
Op dinsdag 26 februari 2002 16:14 schreef mbravenboer het volgende:
Als de functie niet wordt aangeroepen (en dus ook op de eerste statement als niets print) ligt je probleem heel ergens anders. Dat is toch vrij eenvoudig in te zien?
Ik heb op diverse manieren die functie aangeroepen
o.a. een eenvoudige echo.
Ik ziet het niet. Jij? >:)

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

Als hij niet print, heeft het dus NIETS met cookies te maken... Dan zit je fout ergens anders, en moet je met bijvoorbeeld prints testen hoe je functie verloopt.

Verwijderd

Wordt de pagina niet in een frame aangeroepen, zoals je bij cjb.net hebt. Als dit zo is kan 't namelijk problemen geven aangezien een cookie aan het address wordt gekoppeld.

Als dit 't geval is kan je proberen de URL direct aan te roepen en opnieuw proberen of 't wel lukt.

Verwijderd

Topicstarter
Op dinsdag 26 februari 2002 17:49 schreef Phoz het volgende:
Wordt de pagina niet in een frame aangeroepen, zoals je bij cjb.net hebt. Als dit zo is kan 't namelijk problemen geven aangezien een cookie aan het address wordt gekoppeld.

Als dit 't geval is kan je proberen de URL direct aan te roepen en opnieuw proberen of 't wel lukt.
Neen, gebruik geen frames het zit em waarschijnlijk in het verkeerd aanroepen van de functie.
Maar bedankt anyway... >:)

Verwijderd

Ongetest maar zoiets :?
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?
// error ding
error_reporting(E_ALL);

// get var
$mandje = $HTTP_COOKIE_VARS['mandje'];

// Functie
function AddProduct($id, $aantal) { 
    
   global $mandje; // Dit is het cookie 

   if ($mandje) { 
    
      if (ereg("$id\(([0-9]+)\)", $mandje, $regs)) { 

         /* Product bestaat al, het 'huidige' aantal staat nu in $regs[1] */ 

         $aantal = $aantal + $regs[1]; 

         $mandje = ereg_replace("^(.*)($id)\([0-9]+\)(.*)$","\\1\\2($aantal)\\3",$mandje); 

      } else { 

         /* Artikel bestaat nog niet, dus gewoon achteraan toevoegen. */ 

         $mandje .= "-".$id."(".$aantal.")"; 

      } 

   } else { 

      /* Maak het mandje aan! */

      $mandje = "".$id."(".$aantal.")"; 

   } 

   /* Schrijf het cookie (bewaar het maximaal 1 jaar) */
    
    /* Oude weghalen */
       setcookie("mandje","$mandje",time()-31449600,"/",".domein.nl"); 
   
       /* Nieuwe setten */
    setcookie("mandje","$mandje",time()+31449600,"/",".domein.nl"); 
       
    /* $HTTP_REFFER weet ik niet zeker je moet iig redirecten of reloaden om de cookie te activeren */
    header("location: $HTTP_REFFER"); 
    
} 
?>

Verwijderd

Topicstarter
In eerste instantie schijnt dit niet te werken,
maar heb wel weer wat stof om verder te 'spelen'

Toch bedankt. :)
Pagina: 1