Martin_Online: Mehrere Werte speichern

Beitrag lesen

Vielen Dank für eure Hilfe,  mein fertiger Code sieht nun wie folgt aus, ist dieser soweit ok, sprich kann ich damit arbeiten, oder sollte ich noch etwas ändern. Da ich am Anfang stehe, ist dieses jetzt noch problemlos Möglich.

Meine Tabelle für Sprachen, die vom User ausgewählt werden

  
CREATE TABLE IF NOT EXISTS `sprachen_user` (  
`su_id` int(11) NOT NULL,  
  `su_userID` varchar(200) NOT NULL,  
  `su_sprachenID` varchar(200) NOT NULL  
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=15 ;  

Wenn ein Eintrag vorhanden ist, sieht dieser so aus

  
INSERT INTO `sprachen_user` (`su_id`, `su_userID`, `su_sprachenID`) VALUES  
(13, 'c320b10a9dcb0e729cc70b8e072c0c2b', '1'),  
(14, 'c320b10a9dcb0e729cc70b8e072c0c2b', '4');  

Meine Tabelle für „sprachen“ die dem User zur Verfügung stehen

  
CREATE TABLE IF NOT EXISTS `sprachen` (  
`s_id` int(11) NOT NULL,  
  `s_titel` varchar(200) NOT NULL,  
  `s_bezeichnung` varchar(200) NOT NULL  
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;  

Dieser Inhalt sieht so aus

  
INSERT INTO `sprachen` (`s_id`, `s_titel`, `s_bezeichnung`) VALUES  
(1, 'Deutsch', 'deutsch'),  
(2, 'Holländisch', 'hollaendisch'),  
(3, 'Tschechisch', 'tschechisch'),  
(4, 'Türkisch', 'tuerkisch'),  
(5, 'Russisch', 'russisch');  

Meine Checkboxen lasse ich dynamisch zusammen bauen, dieses habe ich so umgesetzt

  
        <form name="form1" method="post" action="">  
        <?php  
		$stmt = $mysqli->prepare("SELECT s_id, s_titel, s_bezeichnung FROM sprachen");  
		$stmt->execute();  
        $stmt->bind_result($s_id, $s_titel, $s_bezeichnung);  
		while($stmt->fetch()) {  
		?>  
          <input name="lang[]" type="checkbox" id="<?php echo $s_bezeichnung;?>" value="<?php echo $s_id;?>" <?php echo (in_array($s_id,$teile)?'checked="checked"':NULL) ?>>  
          <label for="<?php echo $s_bezeichnung;?>"><?php echo $s_titel;?></label>  
        <br>  
		<?php  
		}  
		?>  
        <br>  
          <input type="submit" name="abschicken" id="abschicken" value="Daten eintragen">  
        </form>  

Mein Insert & gegebenenfalls löschen sie so aus

  
if(isset($_POST['abschicken'])){  
	  
  $id = $user_code;	  
  $stmt = $mysqli->prepare("DELETE FROM sprachen_user WHERE su_userID=?");  
  $stmt->bind_param("s",$id);  
  $stmt->execute();  
  
  if(is_array($_POST["lang"]) && $_POST["lang"][0]){  
	  
	foreach($_POST["lang"] as $v){  
		  
	$stmt = $mysqli->prepare("INSERT INTO sprachen_user (su_userID, su_sprachenID)  VALUES (?, ?)");  
			  
			$su_sprachenID 	= $v;  
			$su_userID	= $user_code;  
			  
			$stmt->bind_param("ss", $su_userID, $su_sprachenID);			  
			$stmt->execute();  
	}}  

Jetzt kommt noch das anklicken meiner Boxen, wenn ein User auf die Seite kommt um seine Sprachen zu bearbeiten, dieses setzte ich wie folgt um

  
	$teile = array();  
  
    $stmt = $mysqli->prepare("SELECT  
			web_users.user_code,  
			sprachen_user.su_userID,  
			sprachen_user.su_sprachenID  
								  
			FROM web_users  
			LEFT JOIN sprachen_user  
								  
			ON web_users.user_code = sprachen_user.su_userID  
								  
			WHERE user_session=?");  
	  
    $stmt->bind_param("s", session_id());  
    $stmt->execute();  
    $stmt->bind_result($user_code, $su_userID, $su_sprachenID);  
  
	while($stmt->fetch()) {  
	      $teile[] = $su_sprachenID;  
          }  

0 74

Mehrere Werte speichern

Martin_Online
  • php
  1. 0
    Der Martin
    1. 0
      Martin_Online
      1. 0
        Der Martin
        1. 0
          Martin_Online
          1. 0
            Der Martin
            1. 0
              Martin_Online
              1. 0
                Tom
                1. 0
                  Martin_Online
                  1. 0
                    rimi
                2. 0
                  molily
                  1. 1

                    Mehrere Lösungswege eines Threads zulassen

                    Tom
                    • zu diesem forum
                    1. 0
                      Martin_Online
                      1. 0
                        Tom
                        1. 0
                          Martin_Online
                          1. 0
                            Tom
                            1. 0
                              Martin_Online
                              1. 0
                                dedlfix
                                1. 0
                                  Tom
                                  1. 1
                                    dedlfix
                                    1. 0
                                      Tom
                              2. 0
                                Tom
                              3. 0
                                molily
                            2. 0
                              dedlfix
                              1. 0
                                Martin_Online
                                1. 0
                                  Tom
                                2. 0
                                  dedlfix
                              2. 0
                                Tom
                                1. 0
                                  dedlfix
                            3. 0

                              Neuer Ansatz

                              Martin_Online
                              1. 0
                                Martin_Online
                                1. 1
                                  Auge
                                  1. 0
                                    Martin_Online
                                    1. 0
                                      molily
                                      1. 0
                                        Martin_Online
                                        1. 0

                                          Nachtrag

                                          Martin_Online
                                          1. 0
                                            molily
                                          2. 1
                                            Christian Kruse
                                        2. 0
                                          molily
                          2. 0
                            molily
                            1. 0
                              Christian Kruse
                              1. 0

                                Lange nichts gehört

                                Matthias Apsel
                                • menschelei
                                1. 0
                                  Gunnar Bittersmann
                                  1. 0
                                    Christian Kruse
                                2. 0
                                  Christian Kruse
                                  1. 0
                                    molily
                                    1. 1
                                      Christian Kruse
                                      1. 1
                                        Christian Kruse
                                      2. 0
                                        molily
                                        1. 0
                                          Christian Kruse
                    2. 0

                      Das Streben nach einer angemessenen Lösung

                      molily
            2. 0
              Martin_Online
            3. 0
              Martin_Online
              1. 0
                Der Martin
                1. 0
                  Martin_Online
                  1. 0
                    dedlfix
                    1. 0
                      Martin_Online
                      1. 0
                        dedlfix
                        1. 0
                          Martin_Online
                          1. 0
                            dedlfix
                            1. 0
                              Martin_Online
                              1. 0
                                dedlfix
                                1. 0
                                  Martin_Online
                                2. 0
                                  molily
                                  1. 1
                                    dedlfix
                                    1. 0
                                      molily
                                      1. 0
                                        dedlfix
                                      2. 1
                                        Christian Kruse
  2. 0
    dedlfix
  3. 0
    molily
    1. 0
      Martin_Online
      1. 0
        molily
  4. 0
    Martin_Online
  5. 0
    hotti