Salve a tutti.
Sto provando a costruire un carrello con php e sto incontrando delle difficoltà nell'impostare lo script.
Ho una lista di prodotti ognuno dei quali appartiene a una certa categoria. Vorrei che quando un prodotto viene selezionato sparisca dalla lista in cui si trova e appaia nella lista dei prodotti selezionati che si trova all'interno della stessa pagina.
Questo è lo script che avevo pensato, in breve scelta_prodotti.php
Codice PHP:
<?php
for($c=0; $c < count ($pro); $c++){ // $pro è un array, risultato di una query
if(!isset($proscelto)){
echo "<form action=\"set.php\" method=\"get\">\n";
echo $pro[$c]."<button type=\"submit\" name=\"categoria1\" value=\"$pro[$c]\">+</button>\n
";
}else if(isset($proscelto)AND ($pro[$c]!=$proscelto)){
// in questo modo se il prodotto è stato scelto non viene visualizzato più
echo "<form action=\"set.php\" method=\"get\">\n";
echo $pro[$c]."<button type=\"submit\" name=\"categoria1\" value=\"$pro[$c]\">+</button>\n
";
}
}
echo "</form>\n";
//**********//
for($c=0; $c < count ($pro2); $c++){ // $pro2 è il risultato di una query diversa
//relativa alla seconda categoria di prodotti
if(!isset($proscelto)){
echo "<form action=\"set.php\" method=\"get\">\n";
echo $pro2[$c]."<button type=\"submit\" name=\"categoria2\" value=\"$pro2[$c]\">+</button>\n
";
}else if(isset($proscelto2)AND ($pro2[$c]!=$proscelto2)){
echo "<form action=\"set.php\" method=\"get\">\n";
echo $pro2[$c]."<button type=\"submit\" name=\"categoria2\" value=\"$pro2[$c]\">+</button>\n
";
}
}
echo "</form>\n";
?>
Ottengo una lista di prodotti ognuno dei quali ha un bottone submit a fianco il cui valore è il nome del prodotto stesso. Passo le variabili a set.php dove ho impostato
Codice PHP:
<?php
session_start();
$_SESSION['scelto']['categoria1'][0]=$_GET['categoria1'];
$proscelto=$_SESSION['scelto']['categoria1'][0];
$_SESSION['scelto']['categoria2'][0]=$_GET['categoria2'];
$proscelto2=$_SESSION['scelto']['categoria2'][0];
header("Location:scelta_prodotti.php");
?>
Mi rendo conto di aver combinato un pastrocchio
A parte che la pagina è brutta da vedere -ma a questo ci penso dopo- non sono riuscito
a) a creare uno script che mi dà la possibilità di scegliere più prodotti di una stessa categoria (così come lo vedete adesso creo un array di un solo elemento, i tentativi di prima sono falliti);
b) ad evitare che tra le due scelte ci sia un'interferenza, dato che quando torno alla pagina scelta_prodotti e provo a selezionare un prodotto dell'altra categoria cancello automaticamente quello che avevo selezionato prima.
Scusate per la confusione e grazie.