datensätze in db eintragen

oldputz1990

Erfahrenes Mitglied
Hallo!

ALSO:
Ich habe ein Formular. Da wählt man mittels checkbox die User aus.
Dann bei schritt 2, soll für jeden User ein neuer Datensatz eingetragen werden.

So sehen die Checkboxen aus:

HTML:
<input type="checkbox" name="pn_user[]" value="'.$pn_user["id"].'">

Danke!

Ich hoffe ihr wisst, was ich meine...
 
Zuletzt bearbeitet:
Ich möchte, dass wenn z.B. 2 User angeklickt wurden.

dann wird in schritt 2 ein neuer datensatz mit user 1 eingetragen und ein neuer datensatz mit user 2.

versteht ihr was ich meine?
 
Ich möchte, dass wenn z.B. 2 User angeklickt wurden.

dann wird in schritt 2 ein neuer datensatz mit user 1 eingetragen und ein neuer datensatz mit user 2.

versteht ihr was ich meine?

Sorry, ich würde helfen, wenn ich's verstehen würde :confused:
Stell doch mal neben "versteht ihr was ich meine?" eine konkrete Frage, die auf dein Problem schließen lässt...
 
Ok, dann alles ;-)

Ich möchte ein Kurznachrichten system proggen.

Jetzt wähle ich zuerst die Empfänger aus.


HTML:
<form action="" method="post" name="pn_user">
    <?php

    while($pn_user = mysql_fetch_assoc($alle_user_anzeigen)){

echo '
<input type="checkbox" name="pn_user[]" value="'.$pn_user["id"].'"';
  
if($_GET['check'] == 'all'){
echo 'checked="checked"';
}

echo '">';

echo '<span class="text">'.$pn_user["user"].'</span></input><br>';

}

?><p>
<input type="submit" name="send_pn" value="Weiter" class="submit">
</form>

Dann im Schritt 2, wird für jeden User ein neuer Datensatz eingetragen.

und dass checke ich nicht

ich habe mal so angefangen, aber da passt ihrgentwas nicht...


HTML:
if(isset($_POST['send_pn'])){

$ueb = mysql_real_escape_string(strip_tags($_POST['ueb']));
$text = mysql_real_escape_string(strip_tags($_POST['text']));
$user = 'xxxxxxxxxx'
$autor = $row['user'];
$time = time();
$wichtig = mysql_real_escape_string(strip_tags($_POST['wichtig']));
  
  
$insert = mysql_query("INSERT INTO `pn` (`ueb`, `text`, `user`, `autor`, `time`, `wichtig`)
VALUES ('$ueb', '$text', '$user', '$autor', '$time', '$wichtig')") OR DIE(mysql_error());

}
 
Möglicher Lösungsweg

Da ich selbst noch ein totaler Neuling bin, aber gerne Versuche zu helfen, versuch einfach mal folgendes:
HTML:
<form action="schritt2.php" method="post" name="pn_user">
<?php
    while($pn_user = mysql_fetch_assoc($alle_user_anzeigen))
	  {
		echo '<input type="checkbox" name="pn_user[]" value="'.$pn_user["id"];
		
		  if($_GET['check'] == 'all')
		    {
		      echo 'checked="checked"';
		    }

		echo '">';
		echo '<span class="text">'.$pn_user["user"].'</span></input><br>';
	  }
?>
<br>
<input type="submit" name="send_pn" value="Weiter" class="submit">
</form>

Und "Schritt 2" (schritt2.php):
PHP:
<?php
    if(isset($_POST['send_pn']))
	  {
	    $ueb = mysql_real_escape_string(strip_tags($_POST['ueb']));
	    $text = mysql_real_escape_string(strip_tags($_POST['text']));
	    $user = 'xxxxxxxxxx'
	    $autor = $row['user'];
	    $time = time();
	    $wichtig = mysql_real_escape_string(strip_tags($_POST['wichtig']));

	    $insert = mysql_query("INSERT INTO
                                        `pn` 
                                        (`ueb`, `text`, `user`, `autor`, `time`, `wichtig`)
                               VALUES 
                                        ('$ueb', '$text', '$user', '$autor', '$time', '$wichtig')
                              ") OR DIE(mysql_error());
	  }
?>

Oder müssen die Gänsefüßchen/Anführungsstriche bsw. bei .$pn_user["id"]; auch maskiert werden? Könnte evtl. auch eine Fehlerquelle sein ^^
 
Zuletzt bearbeitet:
naja, das hilft mir jetzt auhc nicht weiterm aber trotzdem danke für deine Hilfe!

was ich im Prinzip bräuchte:

wie kann man ein array auslesen, und für jede sache, welche aus dem array ausgelesen wurde, soll ein neuer Datensatz in die DB geschrieben werden..

Danke
 
Durchlaufe einfach das Array der ausgewählten Benutzer ($_POST['pn_user']) und lege für jeden den Datensatz an.
 
Zurück