Hallo leute,
Ich habe eine DB mit z.b. 100 usern drin. Davon sollen z.b. 20 userer gewinnen. Denen die gewonnen haben, die sollen eine e-mail erhalten (inhalt: vorname & emailadresse des users).
Ich bin soweit gekommen das es funktioniert, aber lediglich nur wenn ich ein user gewinnen lasse. Wenn ich 2 oder mehr gewinnen lasse, dann verschickt er garkeine mail. Es handelt sich um eine while schleife.
Könnt ihr mir bitte helfen? Hier der quelltext.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Gewinner</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="style/style.css" type="text/css">
</head>
<?php
$DatabaseName = "************";
$DbHostName = "****************";
$DbUserName = "***************";
$DbPassWord = "xxxxx";
mysql_connect("$DbHostName", "$DbUserName", "$DbPassWord");
mysql_select_db("$DatabaseName");
///ZUFALLSGENERATOR STARTEN WENN KLICK ERFOLGT
if ($generieren )
{
/// Datenbank Abfrage welche User teilgenommen haben und noch aktiv sind --> speichern des Ergebnisses in ein array
function query_into_array($query){
settype($retval,"array");
$result= mysql_query($query);
$y=mysql_num_rows($result);
$k=mysql_num_fields($result);
for($i=0;$i<$y;$i++){
for($j=0;$j<$k;$j++){
$retval[$i] =
mysql_result($result,$i,
mysql_field_name($result,$j));
}
}
return $retval;
}
$daten=query_into_array("select vorname from gc_gewinnspiel_eins");
/// Zufallsgenerator -> Gewinner aus aktiven Teilnehmern ermitteln unter Ausschluss einer Ergebnisdoppelung
mt_rand((double)microtime()*1000000);
/* "x" mal Zähler auf Null setzen */
for ($i=1; $i<=$gewinner; $i++) $cnt[$i]=0;
/* "x" mal mal ziehen */
for($i=1; $i<=$gewinner; $i++)
{
/* Ziehung "x-1" mal wiederholen, falls Zähler größer Null */
do
{
$z = $daten[mt_rand(0, count($daten)-1)];
}
while($cnt[$z]>0);
/* Zähler erhöhen */
$cnt[$z] = $cnt[$z]+1;
/* Einzelnes Ergebnis speichern */
$name[$i] = $z;
}
/// Zufallsgenerator Ergebnis von array in String umwandeln für Datenbankabfrage der Gewinnerdaten
$namenimplode = implode("','",$name);
/// String der Gewinner in Datenbankquery implemtntieren
}
?>
<body bgcolor="#336633" text="#000000" leftmargin="0" topmargin="10" marginwidth="0" marginheight="0">
<form name="form2" method="post" action="<?php print "$PHP_SELF"; ?>">
<input type="hidden" name="xlist" value="<?=$namenimplode?>">
</p>
<table width="600" border="0" align="center" cellpadding="4" cellspacing="1" bgcolor="#CCCCCC">
<tr bgcolor="#FFFFFF">
<td colspan="4">Gewinnerliste Clubbers Profit Play </td>
</tr>
<tr>
<td width="115">Anzahl Gewinner</td>
<td colspan="3"><input name="gewinner" type="text" class="inputmembercards" id="gewinner" value="<?php print "$gewinner"; ?>" size="10">
<input name="generieren" type="submit" class="inputmessagelesen" id="generieren3" value="Gewinner ermitteln">
<input name="submit" type="submit" id="submit" value="Mail an Gewinner Senden" class="inputmessagelesen"></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="4" valign="top">The Lucky Winners are: </td>
</tr>
<tr>
<td valign="top">Clubber ID:</td>
<td width="100">Vorname:</td>
<td>Teilnahme am:</td>
<td width="200">E-Mail:</td>
</tr>
<?
/// Ausgabe der Gewinner in einer Schleife
$result = mysql_query("SELECT * FROM gc_gewinnspiel_eins WHERE vorname IN ('$namenimplode') ORDER by nr ASC");
while($row = mysql_fetch_array($result)) {
?>
<tr bgcolor="#EFEFEF">
<td><? echo "$row[customerid]"; ?></td>
<td><? echo "$row[vorname]"; ?></td>
<td><? echo "$row[eingetragen]"; ?></td>
<td><? echo "$row[email]"; ?></td>
<? } ?>
</tr>
</table>
<?
echo $submit;
if ($submit) {
echo "SQL: SELECT * FROM gc_gewinnspiel_eins WHERE vorname IN ('$xlist') ORDER by nr ASC
";
$xresult = mysql_query("SELECT * FROM gc_gewinnspiel_eins WHERE vorname IN ('$xlist') ORDER by nr ASC");
if(!$xresult){
echo "Fehler: ".mysql_error()."
";
}
echo "Results: ".mysql_num_rows($xresult)."
";
while($row = mysql_fetch_array($xresult)) {
echo "-> Mail an $row[email]\n";
$header = "From: GERMAN CLUB COMMUNITY <[email='communitydesk@germanclub.de'][/email]>\n";
$header .= "Reply-To: [email='communitydesk@germanclub.de'][/email]\n";
$header .= "Content-Type: text/html\r\nContent-Transfer-Encoding: 8bit\r\n";
$header .= "X-Mailer: PHP ". phpversion();
mail("$row[email]", "DU HAST BEIM GERMAN CLUB COMMUNITY GEWINNSPIEL GEWONNEN","
<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"
\"http://www.w3.org/TR/html4/loose.dtd\">
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-15\">
<title>GERMAN CLUB COMMUNITY - GEWINNER</title>
</head>
<body bgcolor=\"#ffffff\" text=\"#000000\" link=\"#009900\" vlink=\"#009900\" alink=\"#009900\" leftmargin=\"0\" topmargin=\"15\" marginwidth=\"0\" marginheight=\"0\">
<table width=\"80%\" border=\"0\" align=\"center\" cellpadding=\"3\" cellspacing=\"1\" bordercolor=\"#009900\" bgcolor=\"#DCEFCB\">
<tr bgcolor=\"#009900\">
<td colspan=\"2\"><font color=\"#FFFFFF\" size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">G E R M A NC L U BC O M M U N I T Y</font></td>
</tr>
<tr bgcolor=\"#FFFFFF\">
<td colspan=\"2\"></td>
</tr>
<tr bgcolor=\"#FFFFFF\">
<td colspan=\"2\">
<font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">YOU ARE THE WINNER | $row[email]
Hallo $row[vorname].
Herzlichen Glückwunsch. Du bist einer der Gewinner des letzten Freikarten-Gewinnspieles.
Deine beiden Frei-Tickets sind gültig für \"LOVE POOL - Open Air\" im Georg-Arnhold-Bad Dresden am 17.06.2006.
Anfahrtsbeschreibung und alle weiteren Infos rund um das Event kannst du unserer Webseite (Menüpunkt Events) entnehmen.
Drucke dir diese E-Mail aus und bringe sie am 17.06.06 mit.
Am Einlass, an der Kasse, erhältst du gegen Vorlage dieser E-Mail, plus einer weiteren Person, FREIEN EINTRITT!!!
Viel Glück und Spaß auch weiterhin in der COMMUNITY.</font></p>
</td>
</tr>
<tr bgcolor=\"#FFFFFF\">
<td colspan=\"2\"><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\"></font></td>
</tr>
<tr bgcolor=\"#FFFFFF\">
<td colspan=\"2\">
<font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">Cheers
Deine GERMAN CLUB COMMUNITY</font></p>
</td>
</tr>
</table>
</body>
</html>
","$header");
}
};
?>
</form>
</body>
</html>