reload page functie in een echo

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 3 volgende »

Marvin groothuis

marvin groothuis

14/10/2020 11:05:02
Quote Anchor link
Hallo,

Ik wil een button hebben die een item in een winkelmandje stopt en tegelijketijd de page reload.
Nu zit deze button in een echo, zodat hij bij elk nieuwe product word toegevoegd.
Ik had op google gezien dat er een makkelijke functie is voor het reloaden alleen ik krijg deze niet in mijn button door die echo.

Iemand een idee hoe ik dit kan oplossen?
 
PHP hulp

PHP hulp

01/12/2020 12:47:14
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:10:43
Quote Anchor link
Waarom zou je de page moeten reloaden? Meeste webwinkels gebruiken een ajaxrequest, en als deze gelukt is verhogen ze het producttellertje van het winkelmand-icoontje.
 
Marvin groothuis

marvin groothuis

14/10/2020 11:11:39
Quote Anchor link
Hij veranderd het nummertje van het winkelmandje pas als ik de website reload. Of als ik voor een 2e x op toevoegen druk.
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:14:39
Quote Anchor link
Daarom is een AJAX-request juist handig.
 
Marvin groothuis

marvin groothuis

14/10/2020 11:17:45
Quote Anchor link
Dit is het stukje code waar die button in zit, is het niet mogelijk om het met een reload funtie te doen? Ik ben zelf niet zo bekent met ajax requests enzo.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$result
= mysqli_query($conn,"SELECT * FROM `products`");
while($row = mysqli_fetch_assoc($result)){
    echo "<div class='product_wrapper'>
    <form method='post' action=''>
    <input type='hidden' name='code' value="
.$row['code']." />
    <img src='"
.$row['Filename']."' width=300 height=300/>
    <div class='name'>"
.$row['name']."</div>
    <div class='price'>€"
.$row['price']."</div>
    <button type='submit' class='buy'>Buy Now</button>
    </form>
    </div>"
;
        }

mysqli_close($conn);
?>
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:23:12
Quote Anchor link
AJAX-request voer je in javascript uit. En worden in dit geval via een HTML-element getriggerd.
 
Marvin groothuis

marvin groothuis

14/10/2020 11:24:05
Quote Anchor link
Oke, maar het zou dus niet kunnen met een reload functie?

Want ik heb dit gebruikt om die pagina te maken en hier werkt het wel:
https://www.allphptricks.com/simple-shopping-cart-using-php-and-mysql/
Gewijzigd op 14/10/2020 11:29:28 door marvin groothuis
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:29:38
Quote Anchor link
Lijkt mij niet altijd praktisch in een webwinkel. Maar die afweging moet je zelf maken. Niets is zo vervelend als je in een bepaald product de 'uitgebreide productdetails'-tab hebt hebt geopend, vervolgens op 'Voeg toe aan mand' klikt, en dan terug bij de normale productpagina bent.
 
Marvin groothuis

marvin groothuis

14/10/2020 11:31:54
Quote Anchor link
Ik snap wat je bedoelt, maar die pagina is puur om alle producten te zien en ze toe tevoegen, ik heb ook een aparte winkelwagen pagina.

Weet jij hoe ik die reload funtie in een echo kan schrijven? Als dit niet werkt zoals ik het in gedachten heb ga ik die ajax request proberen.
Gewijzigd op 14/10/2020 11:38:11 door marvin groothuis
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:39:01
 
Marvin groothuis

marvin groothuis

14/10/2020 11:41:39
Quote Anchor link
En dan in een OnClick='location.reload()' ??
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:46:46
Quote Anchor link
Probeer het eens.
 
Marvin groothuis

marvin groothuis

14/10/2020 11:48:40
Quote Anchor link
Heb het nu op deze manier:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php <button type='submit' class='buy' onClick=".$location.reload().">Buy Now</button> ?>


Alleen dan krijg ik de volgende fout:

Notice: Undefined variable: location in D:\xampp\htdocs\webshop\productentest.php on line 59

Fatal error: Uncaught Error: Call to undefined function reload() in D:\xampp\htdocs\webshop\productentest.php:59 Stack trace: #0 {main} thrown in D:\xampp\htdocs\webshop\productentest.php on line 59
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:50:10
Quote Anchor link
Javascript is geen PHP :P
 
Marvin groothuis

marvin groothuis

14/10/2020 11:52:11
Quote Anchor link
Hoe ga ik dat dan ooit in dezelfde functie krijgen xD

Sorry voor het vele vragen, maar zit net in mn 2e jaar van applicatie ontwikkelaar.
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 11:56:44
Quote Anchor link
Waarom denk je dat het opeens een PHP-variabel is?
 
Marvin groothuis

marvin groothuis

14/10/2020 11:57:36
Quote Anchor link
Naja ik d8 dat als ik $ ervoor zet dat het wel werkt, maar dat was dus niet zo haha
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 12:02:38
Quote Anchor link
Nooit gokken, maar weten wat je doet!

Je hoeft het niet eens in de PHP-code te zoeken. Gewoon die onClick in je HTML verwerken.
 
Marvin groothuis

marvin groothuis

14/10/2020 12:04:55
Quote Anchor link
Dat is dus het probleem haha.

Maar die button wordt per product dat ik toevoeg via de database daar neer gezet.

Werkt het dat wel als dat in mijn html verwerk?
 
- Ariën -
Beheerder

- Ariën -

14/10/2020 12:07:16
Quote Anchor link
Het is JavaScript, dus het werkt ook in de HTML bij je onClick.
 
Marvin groothuis

marvin groothuis

14/10/2020 12:08:26
Quote Anchor link
Dit is alle code van die pagina, waar moet ik dat dan toevoegen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?php
session_start();
include('config.php');
include('header.php');


$status="";
if (isset($_POST['code']) && $_POST['code']!=""){
$code = $_POST['code'];
$result = mysqli_query(
$conn,
"SELECT * FROM `products` WHERE `code`='$code'"
);
$row = mysqli_fetch_assoc($result);
$name = $row['name'];
$code = $row['code'];
$price = $row['price'];
$Filename = $row['Filename'];
 
$cartArray = array(
 $code=>array(
 'name'=>$name,
 'code'=>$code,
 'price'=>$price,
 'quantity'=>1,
 'Filename'=>$Filename)
);

 
if(empty($_SESSION["shopping_cart"])) {
    $_SESSION["shopping_cart"] = $cartArray;
    $status = "<div class='box'>Product is added to your cart!</div>";
}
else{
    $array_keys = array_keys($_SESSION["shopping_cart"]);
    if(in_array($code,$array_keys)) {
 $status = "<div class='box' style='color:red;'>
 Product is already added to your cart!</div>"
;
    }
else {
    $_SESSION["shopping_cart"] = array_merge(
    $_SESSION["shopping_cart"],
    $cartArray
    );
    $status = "<div class='box'>Product is added to your cart!</div>";
 }
 
 }
}

?>


    
<?php
$result
= mysqli_query($conn,"SELECT * FROM `products`");
while($row = mysqli_fetch_assoc($result)){
    echo "<div class='product_wrapper'>
    <form method='post' action=''>
    <input type='hidden' name='code' value="
.$row['code']." />
    <img src='"
.$row['Filename']."' width=300 height=300/>
    <div class='name'>"
.$row['name']."</div>
    <div class='price'>€"
.$row['price']."</div>
    <button type='submit' class='buy' onClick="
.$location.reload().">Buy Now</button>
    </form>
    </div>"
;
        }

mysqli_close($conn);
?>

 
<div style="clear:both;"></div>
 
<div class="message_box" style="margin:10px 0px;">
<?php echo $status; ?>
</div>
<?php include('footer.php'); ?>
Gewijzigd op 14/10/2020 12:19:54 door marvin groothuis
 

Pagina: 1 2 3 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.