Wątek przeniesiony 2021-05-28 09:15 z PHP przez ŁF.

Problemy z działaniem koszyka.

0

Co zmienić, aby koszyk zaczął działać. Całość składa się z dwóch plików.

<?php
session_start();
require_once('functions.php');
 
if(!empty($_POST)){
    serve_post();
}
 
?>
<!DOCTYPE html>
<html>
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Koszyk</title>
    <link rel="stylesheet" href="style.css">
</head>
 
<body>
 
    <header>
        <h1>Koszyk</h1>
        <div> <a href="koszyk.php">sklep</a> | <a href="koszyk.php?koszyk">koszyk</a></div>
    </header>
    <div id="container">
 
        <div id="left">
            <form action="" method="post">
 
                <table>
                    <caption>Produkty</caption>
                    <th>Nr.</th>
                    <th>Nazwa</th>
                    <th>Dodaj</th>
                    <?php
                    generate_products();
                     ?>
                </table>
            </form>
        </div>
 
        <div id="right">
            <?php
            if((strpos($_SERVER['REQUEST_URI'], "?koszyk")))
                {
                    generate_cart();
                }
            ?>
        </div>
 
    </div>
</body>
 
</html>



0
<html>
<body>


<?php
function generate_products(){
    for($i=1;$i<21;$i++)
    {
        echo "      
    <tr>
        <td>$i</td><td>produkt$i</td><td><input type='submit' name='towar' value='produkt$i'></td>
         
    </tr>";
    }
}


function generate_cart(){
    echo "   
    <form action = '' method = 'post'>
    <table class='koszyk' border='3px solid'>
    <caption>Koszyk</caption>
    <th>Nr.</the><th>Produkt</th><th>Ilosc</th><th>Usuń</th>
    ";
    $i=0;
    foreach($_SESSION as $key=>$n)
    {
    $i++;
        echo "
        <tr>
        <td>$i</td><td>$key</td><td>$n</td>
        <td><input type='submit' name='towar-' value='$key' class='delete'></td>
        ";
    }
}



function serve_post(){
    if(isset($_POST['towar']))
    {
        $towar = $_POST['towar'];
        if(!isset($_SESSION[$towar])) $_SESSION[$towar] = 1;
        else $_SESSION[$towar]++;
        header("Location: koszyk.php?koszyk");
    }
    if(isset($_POST['towar-']))
    {
        $towar = $_POST['towar-'];
        if($_SESSION[$towar]==1) unset($_SESSION[$towar]);
        else $_SESSION[$towar]--;
        header("Location: koszyk.php?koszyk");
    }
}


?>

</body>
</html>
0

Nie wiem czemu to nie działa ?

1
adamon napisał(a):

Nie wiem czemu to nie działa ?

"nie działa" tj przejawy, oczekiwane zachowanie, rzeczywiste zachowanie, komunikaty o ew. błedach

Sam to pisałeś, czy "pożyczone" ?

0

Generalnie to jaki nie wezmę koszyk to i tak 50% działa. Nie ma ktoś gotowca działającego.

2
adamon napisał(a):

Generalnie to jaki nie wezmę koszyk to i tak 50% działa. Nie ma ktoś gotowca działającego.

Trzy lata temu, i potem regularnie co rok, dostałeś odpowiedz:

**nie ma czegoś takiego, jak koszyk, który weźmiesz z netu i by współpracował z resztą twojego projektu.
**

0

Nie musi współpracować, chociaż żeby na innym projekcie działał

3

Najmocniej przepraszam Szanowną Moderację, ale muszę:

xDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

0
adamon napisał(a):

Nie musi współpracować, chociaż żeby na innym projekcie działał

Sklepów, w których koszyk działa, jest bardzo dużo.
Rzecz w tym, ze jak to weźmiesz w ręce, to u ciebie żaden program nie działa prawidłowo

0

chciałbym chociaż zobaczyć, czy jest taka możliowść

4
adamon napisał(a):

chciałbym chociaż zobaczyć, czy jest taka możliowść

Jest jeszcze inna możliwość: naucz się zrobić samodzielnie koszyk.

Jeżeli za trudne, jest wiele innych rzeczy które możesz robić. Na przykład kierowca TIR-a potrafi wyciągnąć nawet 10K na rękę miesięcznie. I jeszcze sobie od czasu do czasu w krzakach zrobi dobrze z umalowaną panią w miniówce - nie chciałbyś?

0

próbuję

0

Zrozum jedno. Nikt nie nauczył się od razu startować w maratonach. Naucz się najpierw raczkować, potem chodzić, biegać, biegać na 5km itd.
Nie nauczysz się podstaw to nigdy nie zrobisz niczego działającego. Nigdy!
Zrob kurs po kolei. Będziesz miał problem z czymś konkretnym z kursu pytaj. Wtedy będzie łatwiej wyjaśnić szczegóły jakiegoś zagadnienia.

1

Tak jak matematykę zaczyna się od dodawania, a nie od trygonometrii czy potrójnych układów równań, tak samo tutaj trzeba zacząć od podstaw. Chociażby kursy na https://www.w3schools.com/, są bardzo proste do zrozumienia.

1 użytkowników online, w tym zalogowanych: 0, gości: 1