Mehrere Select Felder in Datenbank schreiben

Topol

Mitglied
Hallo,

meine User können andere User "followen" und gefollowt werden. Nun hätte ich gerne eine Übersichtsseite in der die User verschiedene Einstellungen vornehmen können.

Z.b. Kann man Usern die Möglichkeit entziehen auf seinem Profil zu posten.

Nun habe ich auf der Übersichtsseite (follow_settings.php) eine While Schleife mit allen Usern die ihm Folgen. Dahinter steht eine SELECT mit den Optionen "Posts Blockieren" und "Posts Zulassen".

Formular:

PHP:
 <form action=\"save_settings.php\" method=\"post\">";

Select:

PHP:
<select name=\"follow_posts[]\" >
<option value=\"1,$follower_id\"> Blockieren </option>
<option value=\"0,$follower_id\"> Zulassen </option>

Diese würde ich dann in der save_settings.php in die DB schreiben lassen per:

PHP:
if(@$_POST['sent'])
{

	$array 	= $_POST['follow_posts'];
	
	
	
		foreach ($array as $value)
			{	INSERT...

Leider muss ich 2 Variablen pro Array übergeben (Den ausgewählten Wert 1 oder 0 und den User. Der aktuell angemeldete User kommt aus der Session/Cookie)
Und da ist mir die Syntax nicht ganz klar.
Kann ich ausser dem Value noch einen anderen Wert in den Array übergeben? Oder wie kann ich aus dem Zusammengesetzten Value 2 Variablen erstellen?

MfG Topol
 
Ich habe die Fragestellung nicht richtig verstanden, aber um deine Frage wenigstens einigermaßen zu beantworten: Es gibt in der foreach noch eine andere Syntax:

PHP:
foreach($array as $key => $value)
{
  ....
}

Ich weiß aber nicht, ob das deine Frage beantwortet.
 
Ich muss pro Aufruf der seite pro User der mir followed ein Select-Auswahl einfügen bei der man die Werte 1 oder 0 auswählen kann.

Wenn ich diesen Select Feldern alle dem Array follow_posts[] als name zuordne, dann könnte ich diese mit Post auslesen. Ich habe aber leider das Problem, dass ich mehrere Spalten in die Datenbank eintragen muss.

Also den festen Wert 1 oder 0 (ob man posten darf oder nicht posten darf) und den User $follower_id. Wenn ich nun beides in Value="0,$follower_id" eintrage erhalte ich 2 Werte in einer Variable.

Ich bräuchte aber 2 Variablen/Werte/Möglichkeiten die ich übergeben kann pro Select-Feld.
 
Zuletzt bearbeitet:
Danke, war der richtige Denkansatz.

PHP:
<select name=\"follow_posts[$follower_id]\" >
<option value=\"0\""; if ($post_status == 0) {echo "selected";}echo" > Zulassen </option>
<option value=\"1\""; if ($post_status == 1) {echo "selected";}echo"> Blockieren </option>

->

$array 	= $_POST['follow_posts'];
	
foreach ($array as  $key => $value)
{ UPDATE...
 
Zurück