Benötige hilfe bei Formular und anzeige

natürlich:
PHP:
mysql_query("INSERT INTO `user_interessen` (`user_id`, `interessen_id`) VALUES ('$dbid', '$_POST[intresse]') ");

aber da trägt er ja nur eine ein und nicht alle
 
Ich steig aus. Wenn meine Posts nicht gelesen werden.... ich hab keine Lust, alles x-mal für dich zu wiederholen, nur weil du zu faul zum Lesen bist :evil:
 
natürlich:
PHP:
mysql_query("INSERT INTO `user_interessen` (`user_id`, `interessen_id`) VALUES ('$dbid', '$_POST[intresse]') ");

aber da trägt er ja nur eine ein und nicht alle

Frage: Wieviele "INSERT INTO" führst du aus? Einen. Wieso also wird nur ein Eintrag gemacht? Richtig, weil du nur einen einträgst. :roll: :ugly:
 
Frage: Wieviele "INSERT INTO" führst du aus? Einen. Wieso also wird nur ein Eintrag gemacht? Richtig, weil du nur einen einträgst. :roll: :ugly:

ja aber ich will doch nicht für jede Intresse einen neuen ausfüllen das geht ja auch nicht weil da wird ja das was ich vorher reingeschrieben habe wieder geändert...
Ich müss also alle felder aufeinmal eintragen... und das bekomme ich gerade irgendwie nicht hin.. weil sie ja immer wieder überschrieben werden
 
Um Dich mal auf die richtige Fährte zu bringen:
PHP:
$values = array();
foreach ($_POST['interessen'] as $interesse)
{
  array_push($values, "('{$dbid}', '{$interesse}')");
}
$query = "INSERT INTO user_interessen (user, interesse) VALUES ".implode(',', $values);
(Ungetestet, aber sollte zur Verdeutlichung reichen)

Wegen des Überschreibens - Du hast in der user_interessen den Primary Key nicht alleine auf user_id gesetzt oder?
 
Um Dich mal auf die richtige Fährte zu bringen:
PHP:
$values = array();
foreach ($_POST['interessen'] as $interesse)
{
  array_push($values, "('{$dbid}', '{$interesse}')");
}
$query = "INSERT INTO user_interessen (user, interesse) VALUES ".implode(',', $values);
(Ungetestet, aber sollte zur Verdeutlichung reichen)

Wegen des Überschreibens - Du hast in der user_interessen den Primary Key nicht alleine auf user_id gesetzt oder?

ich habe garkeinen Primary Key gesetzt.. söllte ich das tun?

Also ich sitze immer noch bei dem Problem...

Code:
Warning: Invalid argument supplied for foreach() in /var/www/web50/html/xxxxxxxxxxx/addon_zielgruppen.inc.php on line 74

Warning: implode() [function.implode]: Invalid arguments passed in /var/www/web50/html/xxxxxxxxxxxxx/addon_zielgruppen.inc.php on line 84
 
Ähm, wieso suchst du dir nicht einen Programmierer oder liest dich in die Materie ein (gibt genug Tutorials, wo man das lernen kann) BEVOR du so etwas proggst?
 
so habe heute mal wieder etwas zeit gehabt

und habe es mit 2 sachen versucht,

PHP:
$values = array();
foreach ($_POST['intresse'] as $interesse)
{
$values[] = array($dbid => $interesse);
//array_push($values, "{$dbid}", "{$interesse}");
$query = "INSERT INTO user_interessen (user_id, interessen_id) VALUES ".implode(',', $values); 
}



PHP:
echo"$values";
ergibt aber nur

und in der Datenbank steht nix... leer... woran kann es liegen?


und so geht es leider auch nicht:
PHP:
$values = array();
foreach ($_POST['intressen'] as $interesse)
{
  array_push($values, "('{$dbid}', '{$interesse}')");
}
$query = "INSERT INTO user_interessen (user_id, interessen_id) VALUES ".implode(',', $values);
 
Zuletzt bearbeitet:
Ohne das ich mir den Thread jetzt komplett durchgelesen habe ...

.... versuche die Ausgabe mal mit

print_r($values);

an Stelle von

echo"$values";
 
als eingeloggter user daten eingeben

ich möchte ein formular erstellen, in dem eingeloggte user Daten so eingeben können, das die eingegebenen Daten sich bei der Ausgabe automatisch auf den eingebenden user beziehen.

Also user 1 und user 10 loggen sich ein und andere suchen nach etwas. die eingeloggten user schreiben nur Bspw. einen titel und ne beschreibung - datum und Eingabe ID ergeben sich automatisch. Nun soll php aber auch derern Session userID´s mit in die Tabelle übergeben, das das es beim auslesen auch wieder erkannt wird, wer, was eingegeben hat.

Mein bisheriger insertcode ist
PHP:
mysql_query("INSERT INTO anzeigen (artikel,nummer,userID,date) VALUES('$artikel','$nummer','$_SESSION['userID'] = mysql_real_escape_string.$_POST['userID'].','NOW());");}
, davor
PHP:
mysql_query("INSERT INTO anzeigen (artikel,nummer,userID,date) VALUES('$artikel','$nummer','.$userID.','NOW());");

und etweder geing gar nichts mehr, oder aber
Code:
Notice: Undefined variable: userID - dies ist die Zeile
Was mache ich falsch
 
Dein erster Beispielcode ist komplett unsinnig, kein Wunder, dass da gar nichts geht.

Der zweite Code ist wohl eher das, was du machen willst. Da wiederum sagt dir PHP ja, was da falsch sein könnte. userID ist nicht definiert. Das heißt, die Variable gibt es gar nicht.
Wenn du eine Session userID hast und die reinschreiben willst, dann mach das doch:


PHP:
mysql_query('INSERT INTO anzeigen (artikel,nummer,userID,date) VALUES("'.$artikel.'",'.$nummer.','.$_SESSION['userID'].',NOW())');

So müsste das gehen, vorausgesetzt, nummer, userID und date sind numerische Felder. Ansonsten muss das auch noch als String rein, also in Anführungs/Schlusszeichen.

EDIT: $_SESSION['userID'] sollte natürlich noch geprüft werden. Ich würde dir aber erstmal ein paar Grundlagen empfehlen, da deine Codes alle mehr nach Zufall und Copy&Paste aussehen.