Array in SQL-Abfrage unterbringen...

Vaio82

Erfahrenes Mitglied
Hallo zusammen... :o)


Habe ein kleines Problem...

PHP:
// Editieren einzelner Rubriken der Kategorien!
if(($s ==0)&&($type ==2)){


		$result = mysql_query("select * from nmscc_project where subject = '$subject' and id = '$key'");
			while($zeile = mysql_fetch_object($result)){ 
				$erg1 = $zeile->name;
			}
			echo("<form action=$PHP_SELF?subject=$subject&s=4&key=$key method=post>
				Geben Sie nun bitte einen neuen Namen für $erg1 an:<hr>
				<input name=\"rname\" type=\"text\" size=\"50\" maxlength=\"50\"><br><br>
				<input type=submit value=editieren> 
				</form>");
		}

		if($s ==4){
		
		$result = mysql_query("select * from nmscc_project where subject = '$subject' and id = '$key'");
			while($zeile = mysql_fetch_object($result)){ 
				$rubrik = $zeile->name;
			}
		
			mysql_query("update nmscc_project set name = '$rname', user = '$user', timestamp = '".time()."' where id = '$key'");
			
			// History...
			// typ 1 = anlegen, typ 2 = editieren, typ 3 = löschen
			$typ = 2;
			$beschreibung = "Rubrik $rubrik wurde in $rname umbenannt...";
			
			mysql_query("insert into nmscc_history (user,beschreibung,typ,subject,timestamp) VALUES ('$user','$beschreibung','$typ','$subject','".time()."')");
			include("verteiler_mail.php"); 
			
echo("Rubrik erfolgreich editiert...<br><br>Sie werden in wenigen Sekunden auf die Startseite weitergeleitet...");
echo("<meta http-equiv=\"refresh\" content=\"3;URL=index.php\">");
}
// Ende Editieren einzelner Rubriken der Kategorien!

Darin sieht man den include von "include("verteiler_mail.php"); " an diese Datei übergebe ich folgende Werte:

PHP:
$beschreibung,$user,$typ,$subject

Mit diesen Werten möchte ich nun arbeiten... Ein Verteiler soll erstellt werden, bzw. sollen mails rausgesendet werden...

Da ich nicht so der super Array-Freak bin, würde ich mich freuen, wenn mir jemand einen Tipp geben könnte, wie ich die Inhalte eines Arrays in einer SQL-Abfrage unterbringen kann....

PHP:
// $ereignis_user hat die änderungen hervorgerufen!
		
					$result1 = mysql_query("select name,email from nmscc_mitarbeiter where id = '$user'");
						while($zeile1 = mysql_fetch_object($result1)){ 
							$ereignis_user = $zeile1->name;
						}

						echo("$ereignis_user");
						
						
		// suche nach dem passenden abo!
						
						$abo = array();
							
						if($subject =="pr"){
							$result = mysql_query("select user from nmscc_verteiler where auswahl_1 = '$subject'");
								while($zeile = mysql_fetch_object($result)){ 
									$abo[] = $zeile->user;
							}}
						
						if($subject =="pd"){
							$result = mysql_query("select user from nmscc_verteiler where auswahl_2 = '$subject'");
								while($zeile = mysql_fetch_object($result)){ 
									
									$abo[] = $zeile->user;
							}}
						
						if($subject =="de"){
							$result = mysql_query("select user from nmscc_verteiler where auswahl_3 = '$subject'");
								while($zeile = mysql_fetch_object($result)){ 
									
									$abo[] = $zeile->user;
							}}
					

					for ($x=0; $x<count($abo); $x++){
						echo($abo[$x]);
					}

					$email = array();
					
					$result = mysql_query("select * from nmscc_mitarbeiter where id = '$abo'");
								while($zeile = mysql_fetch_object($result)){ 
									
									$email[] = $zeile->email;
									echo $zeile->email;
					}

Also hier habe ich diese Abfrage:

PHP:
$result = mysql_query("select * from nmscc_mitarbeiter where id = '$abo'");

$abo ist jedoch ein Array und besitzt ca. 50 Werte...

Habe es etwas ausführlicher gepostet, damit ihr einen kleinen Überblick habt...

SG,
Claus
 
Das ganze kannst du doch ganz einfach mit einer foreach() Schleife lösen, wenn ich das Problem richtig verstanden habe.

http://www.php.net/foreach

In diese Schleife packst du die MySQL Abfrage und dann wird für jeden Wert in dem Array eine MySQL Abfrage gemacht...
 
na, feine sache... :o)

PHP:
foreach($abo as $value) {
   					
					$result = mysql_query("select email from nmscc_mitarbeiter where id = '$value'");
								while($zeile = mysql_fetch_object($result)){ 
									
									$email[] = $zeile->email;
									
					}}
 
Zurück