Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Mehrfachauswahl bei Formularen und dies dann verarbeit (https://www.delphipraxis.net/83813-%5Bphp%5D-mehrfachauswahl-bei-formularen-und-dies-dann-verarbeit.html)

Master_RC 6. Jan 2007 21:07


[PHP] Mehrfachauswahl bei Formularen und dies dann verarbeit
 
Guten Abend!

Gleich zu meinem Problem:

Ich habe bei meinem Browserspiel einen Marktplatz, auf dem man eben Gegenstände kaufen und verkaufen kann.

Das Kaufen und Verkaufen geht über einen Button, der neben dem Gegenstand steht. Beispiel: "Verkaufen".
Dieser verweist nach: ./blablalba.php?op=sell&id=X
(wobei X die ID des Gegenstands in der mySQL-Datenbank ist)

Nun möchte ich aber gerne, dass man mehrere Gegenstände per Checkbox selektiert und dann mit einem Buttonklick verkaufen kann.

Nur wie realisiere ich dies dann?

faux 6. Jan 2007 21:11

Re: [PHP] Mehrfachauswahl bei Formularen und dies dann verar
 
Hallo!

Du könntest das ganze per Arrays an PHP übergeben:

Code:
<label>Tisch <input type="checkbox" name="item[0]" value="1" /></label>
<label>Tastatur <input type="checkbox" name="item[1]" value="1" /></label>
<label>Maus <input type="checkbox" name="item[2]" value="1" /></label>
Und in PHP dann:
Code:
foreach ($_POST['item'] as $item_id => $buy)
{
  if ( $buy ) // Diese Zeile ist imho eigentlich überflüssig, da HTML die Variable sowieso nur dann übergibt, wenn die Checkbox gecheckt ist.
  {
    // Kaufe Item $item_id
  }
}
Grüße
Faux

Timelesk 6. Jan 2007 21:13

Re: [PHP] Mehrfachauswahl bei Formularen und dies dann verar
 
Hi,

du hast doch folgenden Code:
Delphi-Quellcode:
<input type="checkbox" name="sell" value="ID" />
Nun nimmst du als NAME nicht einen Variablennamen, sondern ein Array:
Delphi-Quellcode:
<input type="checkbox" name="sell[]" value="ID" />
Wenn die Checkbox nun aktiviert wurde, wird ein Array mit allen ausgewählten Elementen übergeben.
Nun musst du nur noch mit einer foreach-Schleife das Array durchgehen und die Gegenstände abarbeiten ;)

gruß
Timelesk


EDIT:
faux war ein wenig schneller... Bei meiner Lösung entfällt halt die Prüfung ;)

Master_RC 6. Jan 2007 21:16

Re: [PHP] Mehrfachauswahl bei Formularen und dies dann verar
 
Oke, nur mehr eine Frage:

Wenn der Gegenstand die ID $id hat, wo genau muss die hin? ^^"

Muss der dann im name-Tag oder im value-Tag auftauchen?

Abr schonmal vielen Dank dafür!

faux 6. Jan 2007 21:24

Re: [PHP] Mehrfachauswahl bei Formularen und dies dann verar
 
Zitat:

Zitat von Master_RC
Muss der dann im name-Tag oder im value-Tag auftauchen?

Im name:
Code:
<label>Tisch <input type="checkbox" name="item[[color=red][b]0[/b][/color]]" value="1" /></label>
@Timelesk:
Da du aber item[] verwendest, kann nicht nach dem eigentlichen Produkt (ID) unterschieden werden. ;)

Grüße
Faux

Master_RC 6. Jan 2007 21:36

Re: [PHP] Mehrfachauswahl bei Formularen und dies dann verar
 
Oke, vielen Dank für eure Hilfe!

Ich werde mich melden, wenn ich Probleme habe.

Nochmals vielen Dank!

Timelesk 15. Jan 2007 19:16

Re: [PHP] Mehrfachauswahl bei Formularen und dies dann verar
 
hi,

@faux: Doch, weil ich im Value die ID übergebe. Somit enthält das Array alle IDs der Produkte, die verändert werden sollen.
IDs von Produkten, die nicht aktiviert wurden, gibt es in dem Array somit nicht.

Du nimmst als Value 1 und prüfst dann, ob array[ID] == 1 ist und veränderst dann den Eintrag
Ich nehme das Array und bekomme als Value alle IDs, die verändert werden sollen

gruß
Timelesk


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz