Da array_combine erst ab PHP 5.x möglich ist suche ich eine Alternative für ältere PHP-Versionen da noch nicht jeder auf PHP 5 umgestiegen ist.
Die betroffenen Zeilen sind 29-39. In diesen Zeilen werden Name und ID sowie Icon und ID geordnet und separat in ein Array gespeichert.
Hat da jemand einen Rat für mich?
<?php
# Copyright by Cristian Gheorghiu
# Support www.cristiang.de
defined ('main') or die ( 'no direct access' );
$title = $allgAr['title'].' :: Rekrutierung';
$hmenu = 'Rekrutierung';
$design = new design ( $title , $hmenu );
$design->header();
// pruefen ob Eintraege existieren
$result_classes = db_num_rows(db_query("SELECT * FROM `prefix_wow_classes`"));
$result_recruits = db_num_rows(db_query("SELECT * FROM `prefix_wow_recruit`"));
// vorhandene Rassen in Arrays speichern
$ergebnis = db_query("SELECT * FROM `prefix_wow_race` WHERE fraction LIKE '". $allgAr['wow_fraction'] ."' ORDER BY id ASC");
while($row = db_fetch_object($ergebnis))
{
$form_races .= '<option value="'. $row->id .'">'. $row->name .'</option>';
}
// vorhandene Klassen in Arrays speichern
if( $result_classes > 0 ) {
$ergebnis = db_query("SELECT * FROM `prefix_wow_classes` ORDER BY id ASC");
while($row = db_fetch_object($ergebnis))
{
$wow_array_a[] = $row->id;
$wow_array_b[] = $row->name;
$wow_array_c[] = $row->icon;
$form_classes .= '<option value="'. $row->id .'">'. $row->name .'</option>';
}
$wow_class['klasse'] = array_combine($wow_array_a, $wow_array_b);
$wow_class['icon'] = array_combine($wow_array_a, $wow_array_c);
}
// vorhandene Realms in Arrays speichern
$ergebnis = db_query("SELECT * FROM `prefix_wow_realm` ORDER BY id ASC");
while($row = db_fetch_object($ergebnis))
{
$wow_realm[$row->id] = $row->name;
}
// vorhandene Fraktionen in Arrays speichern
$ergebnis = db_query("SELECT * FROM `prefix_wow_realm` ORDER BY id ASC");
$wow_fraktionen = array(
1 => 'Allianz',
2 => 'Horde'
);
// Bewerbung verarbeiten
//-----------------------------------------------------//
if( !empty($_REQUEST['submit']) ) {
if( chk_antispam('recruit') ) {
$_POST['user'] = escape($_POST['user'], 'string');
$_POST['birth'] = escape($_POST['birth'], 'string');
$_POST['email'] = escape($_POST['email'], 'string');
$_POST['char'] = escape($_POST['char'], 'string');
$_POST['race'] = escape($_POST['race'], 'string');
$_POST['class'] = escape($_POST['class'], 'string');
$_POST['skill'] = escape($_POST['skill'], 'string');
$_POST['equip'] = escape($_POST['equip'], 'textarea');
$_POST['arsenalurl'] = escape($_POST['arsenalurl'], 'string');
$_POST['onlinetime'] = escape($_POST['onlinetime'], 'string');
$_POST['gameexp'] = escape($_POST['gameexp'], 'textarea');
$_POST['message'] = escape($_POST['message'], 'textarea');
// Alle Pflichtfelder
if( !empty($_POST['user']) and !empty($_POST['email']) and !empty($_POST['char']) and !empty($_POST['class']) and !empty($_POST['skill']) and !empty($_POST['arsenalurl']) and !empty($_POST['onlinetime']) and !empty($_POST['gameexp']) ) {
// pruefen ob User oder eMail schon vorhanden sind
$result_applikation = db_num_rows(db_query("SELECT * FROM `prefix_wow_applications` WHERE
user = '". $_POST['user'] ."' OR email = '". $_POST['email'] ."'
"));
$result_user = db_num_rows(db_query("SELECT * FROM `prefix_user` WHERE
name = '". $_POST['user'] ."' OR email = '". $_POST['email'] ."'
"));
if( $result_applikation == 0 and $result_user == 0 ) {
// DB Eintrag
db_query("INSERT INTO `prefix_wow_applications` (
user,
user_age,
email,
user_char,
race,
char_class,
skill,
equip,
arsenal,
user_online,
experience,
user_message
) VALUES (
'". $_POST['user'] ."',
'". $_POST['birth'] ."',
'". $_POST['email'] ."',
'". $_POST['char'] ."',
'". $_POST['race'] ."',
'". $_POST['class'] ."',
'". $_POST['skill'] ."',
'". $_POST['equip'] ."',
'". $_POST['arsenalurl'] ."',
'". $_POST['onlinetime'] ."',
'". $_POST['gameexp'] ."',
'". $_POST['message'] ."'
)");
// Bestaetigungs-eMail versenden an Bewerber
$text = "Hallo ". $_POST['user'] .",
deine Bewerbung ist bei uns eingegangen.
Du bekommst eine eMail sobald wir deine Bewerbung annehmen oder ablehnen.
Mit freundlichen Grüßen
". $allgAr['allg_default_subject'];
mail($_POST['email'], 'Deine Bewerbung ist angekommen!', $text, "From: ". $allgAr['allg_default_subject'] ." <". $allgAr['adminMail'] .">");
// Bestaetigungs-eMail versenden an Admin
if( $allgAr['wow_application_email'] == 1) {
$text = "Hallo,
es wurde soeben eine Bewerbung von ". $_POST['user'] ." eingereicht.
Die Bewerbung kann im Adminbereich ausgewertet werden.
Mit freundlichen Grüßen
das Rekrutierungs-System";
mail($allgAr['adminMail'], 'Neue Bewerbung ist eingegangen!', $text, "From: ". $_POST['user'] ." <". $_POST['email'] .">");
}
$message = '<strong>Erfolg:</strong> Deine Bewerbung ist bei uns eingegangen!<br>';
$formular = 'leeren';
} else { $message .= '<strong>Fehler:</strong> Der User oder die eMail-Adresse existiert bereits!<br>'; }
} else { $message .= '<strong>Fehler:</strong> Es wurden nicht alle Pflichtfelder ausgefüllt!<br>'; }
} else { $message .= '<strong>Fehler:</strong> Der eingetragene Antispam ist falsch!<br>'; }
}
$tpl = new tpl ( 'recruit.htm' );
// Seite ausgeben
//-----------------------------------------------------//
// Information
$ar = array (
'fraktion_img' => $allgAr['wow_fraction'],
'gildenname' => $allgAr['wow_guild_name'],
'fraktion' => $wow_fraktionen[$allgAr['wow_fraction']],
'realm' => $wow_realm[$allgAr['wow_realm']]
);
$tpl->set_ar_out($ar, 0 );
// Rekrutierung
if( $result_recruits > 0 ) {
$tpl->out(1);
// Gesuche ausgeben
$ergebnis = db_query("SELECT * FROM `prefix_wow_recruit`");
while($row = db_fetch_object($ergebnis))
{
$tpl->out(2);
$ar['klicon'] = $wow_class['icon'][$row->classid];
$ar['klname'] = $wow_class['klasse'][$row->classid];
$ar['anzahl'] = $row->numbers;
$tpl->set_ar_out($ar, 3 );
// Positionen
if( !empty($row->position1) or !empty($row->position2) ) {
if( empty($row->position1) and empty($row->position2) ) {
$blank = "";
} elseif( !empty($row->position1) and !empty($row->position2) ) {
$blank = " / ";
} elseif( empty($row->position1) or empty($row->position2) ) {
$blank = "";
}
$class_position = $row->position1.$blank.$row->position2;
$ar['position'] = $class_position;
$tpl->set_ar_out($ar, 4 );
}
// Beschreibung
if( !empty($row->subscribe) ) {
$ar['beschreibung'] = bbcode($row->subscribe);
$tpl->set_ar_out($ar, 5 );
}
$tpl->out(6);
}
} else {
$tpl->out(1);
echo 'Wir suchen im Moment keine speziellen Klassen.';
}
// Formular ausgeben
//-----------------------------------------------------//
if ( !loggedin() and $result_recruits > 0 ) {
if( empty($_REQUEST['submit']) ) {
$ar['MESSAGE'] = '';
} else {
$ar['MESSAGE'] = '<p>'. $message .'</p>';
}
$ar['minlevel'] = $allgAr['wow_min_level'];
$ar['rasse'] = $form_races;
$ar['classes'] = $form_classes;
$tpl->set('ANTISPAM', get_antispam('recruit',100));
if( $formular == 'leeren' ) {
$ar['form_user'] = "";
$ar['form_birth'] = "";
$ar['form_email'] = "";
$ar['form_char'] = "";
$ar['form_skill'] = "";
$ar['form_equip'] = "";
$ar['form_arsenalurl'] = "";
$ar['form_onlinetime'] = "";
$ar['form_gameexp'] = "";
$ar['form_message'] = "";
} else {
$ar['form_user'] = $_POST['user'];
$ar['form_birth'] = $_POST['birth'];
$ar['form_email'] = $_POST['email'];
$ar['form_char'] = $_POST['char'];
$ar['form_skill'] = $_POST['skill'];
$ar['form_equip'] = $_POST['equip'];
$ar['form_arsenalurl'] = $_POST['arsenalurl'];
$ar['form_onlinetime'] = $_POST['onlinetime'];
$ar['form_gameexp'] = $_POST['gameexp'];
$ar['form_message'] = $_POST['message'];
}
$tpl->set_ar_out($ar, 7 );
}
echo '<p> </p><p align="center"><a href="http://www.cristiang.de" target="_blank" class="smallfont">Rekrutierungs-System © CristianG.de</a></p>';
$design->footer();
?>



