login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[Php] Toevoegen aan winkelmandje

Offline Simax - 01/04/2008 17:31
Avatar van SimaxOnbekend Ik ben een winkelmandje aan het maken voor een webwinkel. Nu zou ik graag een product willen toevoegen wanneer men op een link klikt..

Ik heb het volgende..
  1. $categorie = $_GET["categorie"];
  2. $query = mysql_query("SELECT * FROM producten INNER JOIN fabrikanten ON(producten.fabrikant_id = fabrikanten.fabrikant_id) WHERE categorie_id = {$categorie} ORDER BY product_id");
  3.  
  4. print "<table>".
  5. "<tr>".
  6. "<th>Productnr.</th>".
  7. "<th>Naam</th>".
  8. "<th>Prijs</th>".
  9. "<th></th>".
  10. "</tr>";
  11. while($result = mysql_fetch_array($query))
  12. {
  13. print "<tr>".
  14. "<td>{$result["product_id"]}</td>".
  15. "<td><a href=\"?page=producten&categorie={$result["categorie_id"]}&product={$result["product_id"]}\">{$result["product_naam"]}</a></td>".
  16. "<td>€ {$result["prijs"]}</td>".
  17. "<td>toevoegen</a></td>".
  18. "</tr>";
  19. }
  20. print "</table>";
  21.  
  22. print "<a href=\"?page=producten\" class=\"terug\">Terug naar Categorien</a>";


Nu zou ik graag bij het klikken op toevoegen, het product toevoegen aan mijn winkelmandje d.m.v. een functie. Iemand die mij kan helpen?

Alvast bedankt .

29 antwoorden

Gesponsorde links
Offline Dlol - 01/04/2008 17:36 (laatste wijziging 01/04/2008 17:42)
Avatar van Dlol Lid Ik gebruik voor zo'n dingen meestal een form met 1 <input type="hidden" name="hidden">.
De link wordt dan dit: <a href="javascript:functie('productnaam');"
En de functie wordt iets in de aard van dit:
  1. function functie(naam) {
  2. document.formnaam.hidden.value=naam;
  3. document.formnaam.submit();
  4. }



Vanzelfspreken voeg je het item toe aan je winkelmandje op de pagina waar-ie naartoe gaat als het form gesubmit is.
Offline Simax - 01/04/2008 18:07 (laatste wijziging 02/04/2008 16:33)
Avatar van Simax Onbekend @Sandernerd,
Momenteel in een database, maar mag ok in een sessie verwerkt worden indien dat makkelijk is..

Edit
Is het mogelijk een functie(php) aan te roepen in een link of form?
Offline Simax - 02/04/2008 17:14 (laatste wijziging 02/04/2008 17:18)
Avatar van Simax Onbekend Ok, dat is duidelijk .

En nu wil ik het volgende, zodra men op een link/button klikt, het artikel word toegevoegd aan het winkelmandje..
  1. function toevoegen_aan_winkelmandje()
  2. {
  3. toevoegen aan sessie;
  4. }
Offline Simax - 04/04/2008 10:32
Avatar van Simax Onbekend En kan ik deze functie uitvoeren als men op een link klikt?
Of is een form hier beter voor?
Offline marten - 04/04/2008 10:59
Avatar van marten Beheerder Gewoon formuliertje is het handigste denk ik
Offline Simax - 04/04/2008 11:43
Avatar van Simax Onbekend Op deze manier bedoel je?
  1. function toevoegen()
  2. {
  3. toevoegen aan winkelmandje;
  4. }
  5.  
  6. <form action="" method="post">
  7. <input name="toevoegen" onclick="toevoegen()" type="button" value="toevoegen"/>
  8. </form>
Offline Simax - 04/04/2008 12:53
Avatar van Simax Onbekend Kan ik hier geen functie voor gebruiken? Aangezien ik al zoveel paginas heb..
Offline Simax - 04/04/2008 12:58 (laatste wijziging 04/04/2008 12:59)
Avatar van Simax Onbekend Ik heb het volgende..
  1. <table>
  2. <tr>
  3. <td><?php echo $result["product_id"]; ?></td>
  4. <td><?php echo $result["product_naam"]; ?></td>
  5. <td>toevoegen</td>
  6. </tr>
  7. </table>


Nu zou ik op de plaats van "<td>toevoegen</td>" een link of button willen, waarmee het product kan worden toegevoegd aan het winkelmandje..
Offline Simax - 04/04/2008 13:01
Avatar van Simax Onbekend $result ['product_id'] is gewoon simpelweg het id van het product.
Deze bestaat uit cijfers..
Offline Simax - 04/04/2008 13:10 (laatste wijziging 04/04/2008 13:10)
Avatar van Simax Onbekend Oke, dankjewel 

Maar kan ik geen gebruik maken van een functie, ipv add_item.php?
Offline Simax - 04/04/2008 13:29 (laatste wijziging 04/04/2008 13:51)
Avatar van Simax Onbekend Juist, daar maak ik al gebruik van .
Op deze manier zou het moeten kunnen?

functions.php
  1. function toevoegen()
  2. {
  3. if(!isset($_SESSION["product"][$_GET["item"]]))
  4. {
  5. $_SESSION["product"][$_GET["item"]] = true;
  6. print "Item is toegevoegd aan het winkelmandje.";
  7. }
  8. else
  9. {
  10. print "Item is al toegevoegd aan het winkelmandje.";
  11. exit();
  12. }
  13. }


producten.php
  1. while($result = mysql_fetch_array($query))
  2. {
  3. print "<table>".
  4. "<tr>".
  5. "<td>{$result["product_id"]}</td>".
  6. "<td>{$result["product_naam"]}</td>".
  7. "<td><a href=\"?page=functions.php&function=toevoegen&item={$result["product_id"]}\">toevoegen</a></td>".
  8. "</tr>".
  9. "</table>";
  10. }
Offline Simax - 04/04/2008 13:48
Avatar van Simax Onbekend
Citaat:
je moet die regel in producten.php nog verbteren que quotes.


Citaat:
wat doen die accolades in toevoegen.php?
Offline Simax - 04/04/2008 13:52
Avatar van Simax Onbekend Meer uitleg graag, snap niet wat je bedoelt? 
Offline Simax - 04/04/2008 14:01
Avatar van Simax Onbekend Oke, dat vermoede ik al .
Offline Simax - 04/04/2008 14:03 (laatste wijziging 04/04/2008 14:06)
Avatar van Simax Onbekend
  1. {$result["product"]}

is toch hetzelfde als..
  1. '".$result["product"]."'
Offline Simax - 04/04/2008 14:19 (laatste wijziging 04/04/2008 14:21)
Avatar van Simax Onbekend nee, helaas niet 

Citaat:
Warning: include() [function.include]: Failed opening '' for inclusion (include_path='.;C:xamppphppear') in C:xampphtdocswebshopincludesfunctions.php on line 20


functions.php
  1. function pages()
  2. {
  3. if(isset($_GET["page"]))
  4. {
  5. switch($_GET["page"])
  6. {
  7. case "home": $page = "pages/home.php"; break;
  8. case "producten": $page = "pages/producten.php"; break;
  9. case "adviesgesprek": $page = "pages/adviesgesprek.php"; break;
  10. case "services_onderhoud": $page = "pages/services_onderhoud.html"; break;
  11. case "voorwaarden": $page = "pages/voorwaarden.html"; break;
  12. case "toevoegen": $page = "pages/toevoegen.php"; break;
  13.  
  14. case "registreren": $page = "pages/registreren.php"; break;
  15. case "inloggen": $page = "pages/inloggen.php"; break;
  16. case "winkelmandje": $page = "pages/winkelmandje.php"; break;
  17. case "uitloggen": $page = "pages/uitloggen.php"; break;
  18. }
  19. include($page);
  20. }
  21. else
  22. {
  23. include("pages/home.php");
  24. }
  25. }
Offline Simax - 04/04/2008 14:22
Avatar van Simax Onbekend
  1. require_once("includes/functions.php");
Offline Simax - 04/04/2008 14:31 (laatste wijziging 04/04/2008 14:38)
Avatar van Simax Onbekend
Sandernerd schreef:
in je script wordt de categorie bekeken, maar omdat deze leeg is wordt er geen pagina geïncluded en werkt het niet meer.


Wat bedoel je? 
Offline Simax - 04/04/2008 14:46
Avatar van Simax Onbekend Vanuit de index
Offline Simax - 04/04/2008 14:49
Avatar van Simax Onbekend Standaard geen waarde,
maar wat heeft dat te maken met die error?
Offline Simax - 04/04/2008 14:52
Avatar van Simax Onbekend Dat werkt..
Offline Simax - 04/04/2008 14:57
Avatar van Simax Onbekend Nu wertk het wel..
Citaat:
Item is toegevoegd aan het winkelmandje.


En hoe zou ik nu de sessie kunnen uitlezen, zodat degene kan zien wat hij in zijn winkelmandje heeft staan?
Offline Simax - 04/04/2008 15:53 (laatste wijziging 04/04/2008 15:53)
Avatar van Simax Onbekend Naar mijn mening niet . De pagina blijft maar aan het laden..
Offline Simax - 04/04/2008 16:00
Avatar van Simax Onbekend
Citaat:
Parse error: syntax error, unexpected T_STRING in C:xampphtdocswebshoppageswinkelmandje.php on line 6
Offline Simax - 04/04/2008 16:10
Avatar van Simax Onbekend
Citaat:
Warning: array_count_values() [function.array-count-values]: Can only count STRING and INTEGER values! in C:xampphtdocswebshoppageswinkelmandje.php on line 6
Offline Simax - 04/04/2008 16:22 (laatste wijziging 04/04/2008 16:22)
Avatar van Simax Onbekend Nu krijgen we..
Citaat:
Array ( [true] => 1 )

dus zit er iets in de array . Wat nu?
Offline Simax - 04/04/2008 16:32
Avatar van Simax Onbekend Script laadt oneindig..
Offline Simax - 04/04/2008 16:37
Avatar van Simax Onbekend Na lang laden, krijg je dit als resultaat..
Citaat:
truetrue
Fatal error: Maximum execution time of 60 seconds exceeded in C:xampphtdocswebshoppageswinkelmandje.php on line 12
Offline Simax - 04/04/2008 16:48
Avatar van Simax Onbekend
Citaat:
truetrue
Fatal error: Maximum execution time of 60 seconds exceeded in C:xampphtdocswebshoppageswinkelmandje.php on line 10
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.275s