Problem bei Übergabe der Textarea

Wie meinst du das mit dem entschärfen?
Du nutzt ja für $mailinput auch die Funktion [phpf]mysql_real_escape_string[/phpf]. Diese maskiert alle relevanten und "gefährlichen" Sonderzeichen, z.B. wird ein ' durch \' ersetzt.
Das gleiche musst du natürlich auch bei $id machen:
PHP:
$id = isset($_GET['id']) ? intval($_GET['id']) : NULL;
Hier kannst du aber auch nur [phpf]intval[/phpf] anwenden, da diese Funktion nur Zahlen zurückgibt.
 
Von Javaskript habe ich nicht den blasesten Schimmer
Dann solltest du erst recht die Finger von den Links lassen. Nutze einfach die Standard-Variante mit den submit Buttons. Statt diesem Teil:
PHP:
<TR bgcolor="#FFF">
      <TD></TD>
          <TD><div align="center"><b><?php print "<a href=\"Admin_pilot_anfragen3.php?id=$id\">Add Pilot</a>";?></b></div></TD>
          <TD><div align="center"><b><?php print "<a href=\"Admin_pilot_anfragen_loeschen.php?id=$id\">Delete Pilot Application</a>";?></b></div> </TD>
          <TD></TD>
</TR>
Verwendest du diesen Teil:
HTML:
<TR bgcolor="#FFF">
      <TD></TD>
          <TD><div align="center"><b>
<input type="submit" name="submit_button" value="Add Pilot">
</b></div></TD>
          <TD><div align="center"><b>
<input type="submit" name="submit_button" value="Delete Pilot Application">
</b></div> </TD>
          <TD></TD>
</TR>
Dann änderst du das action Attribut des FORM tags, sodass es auf eine Datei zeigt, die beide Aktionen kann: Hinzufügen und Löschen.
In dieser PHP-Datei fragst du dann den Wert von $_POST['submit_button'] ab. Wenn dieser gleich "Add Pilot" ist, fügst du einen neuen hinzu. Wenn der Wert gleich "Delete Pilot Application" ist, kannst du Löschen.
 
ja dazu bin ich schon in der Lage. wie zwei Skripte in einer Datei ausfügen soll, bei der dann beim löschen automatisch eine E-Mail herausgesendet wird, stellt für mich gerade vor eine schier unlösbare Aufgabe
 
wie zwei Skripte in einer Datei ausfügen soll, bei der dann beim löschen automatisch eine E-Mail herausgesendet wird, stellt für mich gerade vor eine schier unlösbare Aufgabe
Das ist zwar hinsichtlich Grammatik, Interpunktion und Groß- und Kleinschreibung kein Satz (siehe http://www.tutorials.de/content/872-netiquette.html §15), aber ich glaube ich habe deine Frage verstanden:
Du weisst nicht, wie das Script aussieht, das beide Funktionalitäten (Hinzufügen und Löschen) bündelt und du weisst nicht, wie man beim Löschen eine E-Mail abschickt.

Was hast du denn bisher? Poste nochmal deine Seite 1 und deine bisherige Seite 2. Dann haben wir wenigstens einen Ansatz.
 
Doch löschen+ E-Mail senden, hatte ich schon mal fertig. Zumindestens mit einem Standard E-Mailsatz. Jetzt soll ja ein angepasster Formtext über die textarea eingefügt werden.

Einfügen hatte ich hierfür noch nicht gecodet aber auch hier weiß ich was ich schreiben muss.

Nur wie ich beide Funktionen in eine Seite bekomme ohne das diese sich gegenseitig beißen das weiß ich momentan überhaupt nicht, zumal das ja alles überzwei Button laufen soll die nur eine Action besitzen.

Admin_pilot_anfragen2.php
PHP:
<?php 
$id = isset($_GET['id']) ? $_GET['id'] : null; 

$abfrage = "SELECT * FROM  piloten_bewerbung Where `id` = '".$id."'";
$ergebnis = mysql_query($abfrage);
$dataset = mysql_fetch_array($ergebnis);
$num = mysql_Num_Rows ($ergebnis);

$nachname = ($dataset['nachname']);
$vorname = ($dataset['vorname']);
$mail = ($dataset['mail']);
$passwort = ($dataset['passwort']);
$plz = ($dataset['plz']);
$ort = ($dataset['ort']);
$heimatflughafen = ($dataset['heimatflughafen']);
$basis = ($dataset['basis']);
$ivaoid = ($dataset['ivaoid']);
$vatsimid = ($dataset['vatsimid']);
$other = ($dataset['other']);
$reg_datum = ($dataset['reg_datum']);

  if ($num != 0):
  

?>
 <FORM ACTION="Admin_pilot_anfragen3.php" METHOD="post">

<table cellspacing="2"  cellpadding="1" width="88%" class="tableLine" align="center"> 
 <TR bgcolor="#B6B6B6">
	    <TD width="30%"><div align="left"><strong> Pilot ID:</strong></div></TD>
	    <TD width="19%"><div align="left">
	      <INPUT TYPE="text" NAME="pilot_id" VALUE="<?php echo mysql_result($ergebnis, 0, "pilot_id");?>"
	    SIZE="4" MAXLENGTH="4">	    <TD width="29%"><div align="left"><strong>Date of Birth:</strong></div></TD>
	    <TD width="22%">             	      <?php echo "$geburtstag" ?>
	      <INPUT TYPE="hidden" NAME="vorname" VALUE="<?php  echo "$geburtstag"; ?>"></TD>
	    </TR> 
	  <TR bgcolor="#666666">
	    <TD width="30%"><div align="left"><strong> First Name:</strong></div></TD>
	    <TD width="19%"><div align="left">
             	      <?php echo "$vorname" ?>
	      <INPUT TYPE="hidden" NAME="vorname" VALUE="<?php  echo "$vorname"; ?>">
	      </div></TD>
	    <TD width="29%"><div align="left"><strong> Last Name:</strong></div></TD>
	    <TD width="22%"><div align="left"><?php echo "$nachname" ?>
	      <INPUT TYPE="hidden" NAME="nachname" VALUE="<?php  echo "$nachname"; ?>"></div>
</TD>
      </TR> 
	  <TR bgcolor="#B6B6B6">
	    <TD width="30%"><div align="left"><strong> E-Mail Addy:</strong></div></TD>
	    <TD width="19%"><div align="left">
		<?php echo "$mail" ?>
	      <INPUT TYPE="hidden" NAME="mail" VALUE="<?php  echo "$mail"; ?>">	      </div></TD>
	    <TD width="29%"><table cellspacing="0" cellpadding="0">
	      <tr>
	        <td></td>
	        <td><strong> Password:</strong></td>
	        </tr>
	      </table></TD>
	    <TD width="22%"><div align="left"><?php echo "$passwort" ?>
	      <INPUT TYPE="hidden" NAME="passwort" VALUE="<?php  echo "$passwort"; ?>"> </div></TD>
	    </TR> 
        <TR bgcolor="#666666">
	    <TD width="30%"><div align="left"><strong> IVAO ID:</strong></div></TD>
	    <TD width="19%"><div align="left">
		<?php echo "$ivaoid" ?>
	      <INPUT TYPE="hidden" NAME="ivaoid" VALUE="<?php  echo "$ivaoid"; ?>">	
	      </div></TD>
	    <TD width="29%"><table cellspacing="0" cellpadding="0">
	      <tr>
	        <td></td>
	        <td><strong> Vatsim ID:</strong></td>
	        </tr>
	      </table></TD>
	    <TD width="22%"><div align="left"><?php echo "$vatsimid" ?>
	      <INPUT TYPE="hidden" NAME="vatsimid" VALUE="<?php  echo "$vatsimid"; ?>">	 </div></TD>
	    </TR> 
	  <TR bgcolor="#B6B6B6">
	    <TD width="30%"><div align="left"><strong> Location:</strong></div></TD>
	    <TD width="19%"><div align="left">
	     <?php echo "$ort" ?>
	      <INPUT TYPE="hidden" NAME="ort" VALUE="<?php  echo "$ort"; ?>">	
	      </div></TD>
	    <TD width="29%"><table cellspacing="0" cellpadding="0">
	      <tr>
	        <td></td>
	        <td><strong> Zip-Code:</strong></td>
	        </tr>
	      </table></TD>
	    <TD width="22%"><div align="left"><?php echo "$plz" ?>
	      <INPUT TYPE="hidden" NAME="plz" VALUE="<?php  echo "$plz"; ?>">	 </div></TD>
	    </TR> 
	  <TR bgcolor="#666666">
	    <TD width="30%"><div align="left"><strong> Home Airport:</strong></div></TD>
	    <TD width="19%"><div align="left">
<?php echo "$heimatflughafen" ?>
	      <INPUT TYPE="hidden" NAME="heimatflughafen" VALUE="<?php  echo "$heimatflughafen"; ?>">
	    </div></TD>
	    <TD width="29%"><table cellspacing="0" cellpadding="0">
	      <tr>
	        <td></td>
	        <td width="196"><div align="left"><strong> First Location:</strong></td>
	        </tr>
	      </table></TD>
	    <TD width="22%"><div align="left"><?php echo "$basis" ?>
	      <INPUT TYPE="hidden" NAME="basis" VALUE="<?php  echo "$basis"; ?>">
 </div></TD>
	    </TR>
  	  <TR bgcolor="#B6B6B6">
  	    <TD><div align="left"><strong> Remarks:</strong></div></TD>
  	    <TD><div align="left">
 <?php echo "$other" ?>
	      <INPUT TYPE="hidden" NAME="other" VALUE="<?php  echo "$other"; ?>">
  	    </div></TD>
  	    <TD><div align="left"><strong> Registrierungsdatum:</strong></div></TD>
  	    <TD><div align="left"><?php echo "$reg_datum" ?>
	      <INPUT TYPE="hidden" NAME="reg_datum" VALUE="<?php  echo "$reg_datum"; ?>"> </div></TD>
      </TR> 
        	  <TR bgcolor="#666666">
  	    <TD><div align="left"></div></TD>
  	    <TD><div align="left"></div></TD>
  	    <TD><div align="left"><strong>Comment for Rejecting:<br /><i>(Pls. edit for each Application)</i></strong></div></TD>
  	    <TD><div align="left">
  	      <textarea name="reject_comment" cols="40" rows="">Dear <?php echo "$vorname" ?> <?php echo "$nachname" ?>\nWe are sorry, but we can not accept your Application.\n......\n For more Informations fell free to conact us on $sender\n\n Best Regards\n\n <b>Your AmericanBlue Support Team</b>
  	      </textarea>
  	    </div></TD>
      </TR> 
	 <TR bgcolor="#FFF">
      <TD></TD>
            <TD><div align="center"><b>
<input type="submit" name="submit_button" value="Add Pilot">
</b></div></TD>
          <TD><div align="center"><b>
<input type="submit" name="submit_button" value="Delete Pilot Application">
</b></div> </TD>
  	    <TD></TD>
</TR> </TABLE> 
</FORM>
  
<?php else: echo "Eintrag nicht vorhanden";
endif;
mysql_freeresult($ergebnis);
mysql_close();
?>

Admin_pilot_amfragen_loeschen.php
PHP:
<?php
$id = isset($_GET['id']) ? intval($_GET['id']) : NULL;  
 $mailinput = mysql_real_escape_string($_POST['reject_comment']); 
 $abfrage = "SELECT
                    mail

					 
            FROM 
                     piloten_bewerbung
					 
			Where id = $id
          
            ORDER BY reg_datum  ASC";
$ergebnis = mysql_query($abfrage);
$dataset = mysql_fetch_array($ergebnis);
$num = mysql_Num_Rows ($ergebnis);

$loesch = mysql_query("DELETE FROM piloten_bewerbung WHERE id = '$id'");
 
$sender = "info@americanblue-va.com";
$empfaenger = "".$dataset['mail']."";
$betreff = "Your Application on AmericanBlue-VA";
$mailtext = "$mailinput";
mail($empfaenger, $betreff, $mailtext, "From: $sender ");
print "You has rejected this Application";
  
?><br />
 
Zuletzt bearbeitet:
Nur wie ich beide Funktionen in eine Seite bekomme ohne das diese sich gegenseitig beißen das weiß ich momentan überhaupt nicht, zumal das ja alles überzwei Button laufen soll die nur eine Action besitzen.

OK, du hast nur eine "action", aber das bedeutet ja nur, dass in beiden Fällen auf die gleiche Seite (action=Zielseite) geleitet wird. Du kannst aber abhängig davon, welcher Button geklickt wurde zwei unterschiedliche Aktionen (Handlungen) ausführen:
Seite 2 (z.B.: Admin_pilot_bearbeiten.php):
PHP:
if ($_POST['submit_button'] == "Add pilot") {
// hier dein Code um einen neuen Plioten hinzuzufügen
// also Copy&Paste aus der Admin_pilot_anfragen3.php
} else if ($_POST['submit_button'] == "Delete Pilot Application") {
// hier dein Code um einen Piloten zu löschen
// also Copy&Paste aus der Admin_pilot_anfragen_loeschen.php
} else {
// Fehlermeldung weil die Seite nicht durch das Formular aufgerufen wurde
}
Für die ID hast du jetzt zwei Möglichkeiten:
Entweder du holst sie weiterhin über GET:
PHP:
<FORM ACTION="Admin_pilot_bearbeiten.php?id=<?php print $id; ?>" METHOD="post">
Oder du holst sie auch über das Formular per POST, dann solltest du ein weiteres hidden Feld hinzufügen:
PHP:
<INPUT TYPE="hidden" NAME="id" VALUE="<?php print $id; ?>">
 
Zuletzt bearbeitet:
Also die Grundidee war ne Wucht, und das Skript zum löschen läuft auch ohne wenn und aber, leider funktioniert das adden neuer Piloten nicht sondern der else Kommentar wird ausgeworfen warum auch immer.

Admin_pilot_anfragen_bearbeiten.php
PHP:
<?php
$id = isset($_GET['id']) ? intval($_GET['id']) : NULL;  
	$pilot_id=$_POST["pilot_id"]; 
	$vorname=$_POST["vorname"]; 
	$nachname=$_POST["nachname"];
	$mail=$_POST["mail"];
	$passwort=md5($_POST["passwort"]);
    $passwort2=($_POST["passwort"]);
	$postleitzahl=$_POST["plz"];
	$ort=$_POST["ort"];
	$heimatflughafen=$_POST["heimatflughafen"];
	$letzter_standort=$_POST["basis"];
	$ivaoid=$_POST["ivaoid"];
	$vatsimid=$_POST["vatsimid"];
	$other=$_POST["other"];
	$reg_datum=$_POST["reg_datum"];
	$geburtstag=$_POST["geburtstag"];
	$mailinput = mysql_real_escape_string($_POST['reject_comment']); 
	
 $abfrage = "SELECT
                    `piloten_bewerbung`.`id`,
					`piloten_bewerbung`.`vorname`,
					`piloten_bewerbung`.`nachname`,
					`piloten_bewerbung`.`mail`,
					`piloten_bewerbung`.`passwort`,
					`piloten_bewerbung`.`plz`,
					`piloten_bewerbung`.`ort`,
					`piloten_bewerbung`.`heimatflughafen`,
					`piloten_bewerbung`.`basis`,
					`piloten_bewerbung`.`ivaoid`,
					`piloten_bewerbung`.`vatsimid`,
					`piloten_bewerbung`.`other`,
					`piloten_bewerbung`.`reg_datum`,
					`piloten_bewerbung`.`geburtstag`,
					`piloten`.`pilot_id`,
					`piloten`.`passwort`,
					`piloten`.`vorname`,
					`piloten`.`nachname`,
					`piloten`.`geburtstag`,
					`piloten`.`strasse`,
					`piloten`.`postleitzahl`,
					`piloten`.`ort`,
					`piloten`.`mail`,
					`piloten`.`ivaoid`,
					`piloten`.`vatsimid`,
					`piloten`.`heimatflughafen`,
					`piloten`.`benutzergruppe`,
					`piloten`.`letzter_standort`
            FROM 
                     piloten_bewerbung,piloten
					 
			Where `piloten_bewerbung`.`id` = $id 
			Limit  1";
			
$ergebnis = mysql_query($abfrage);
	if ($ergebnis)

	   	   while ($dataset = mysql_fetch_array($ergebnis))
 
if ($_POST['submit_button'] == "Add pilot") {
		$abfrage2="INSERT INTO piloten
		SET 	pilot_id='$pilot_id',
			vorname='$vorname',
			nachname='$nachname',
			mail='$mail',
			passwort='$passwort',
			plz='$plz',
			ort='$ort',
			heimatflughafen='$heimatflughafen',
			letzter_standort='$letzter_standort',
			ivaoid='$ivaoid',
			vatsimid='$vatsimid',
			geburtstag='$geburtstag'";
			
$sender = "info@americanblue-va.com";
$empfaenger = "".$dataset['mail']."";
$betreff = "Your Application on AmericanBlue-VA";
$mailtext = "Dear $vorname $nachname,\n thank you for applicate on AmericanBlue-va.com.\n We have accept your application.\n\nYour Data:\n<b>Pilot ID:</b> $pilot_id \n<b>Password:</b> $passwort2\n\n With immediate effect you can login on http:\\www.americanblue-va.com\n\n The hole staff wish you a plasent time with us and the Community\n\n <b>Your AmericanBlue-Va Team</b>";
mail($empfaenger, $betreff, $mailtext, "From: $sender ");

print"<p>You add <blockquote>Pilot <b>$pilot_id</b>$vorname $nachname!<blockquote></p>";

}

 else if ($_POST['submit_button'] == "Delete Pilot Application") 
{
$loesch = mysql_query("DELETE FROM piloten_bewerbung WHERE id = '$id'");
 
$sender = "info@americanblue-va.com";
$empfaenger = "".$dataset['mail']."";
$betreff = "Your Application on AmericanBlue-VA";
$mailtext = "$mailinput";
mail($empfaenger, $betreff, $mailtext, "From: $sender ");

print "You has rejected this Application";
} 



else {
print "There is an failure in the script";
}		   
 
?><br />
 
Also ich muss das Script mal kommentieren, das ist ziemlich durcheinander:

PHP:
<?php
// Diese Zuweisung ist zwar nett, aber was ist wenn $_GET['id'] nicht gesetzt ist? Dann wird $id einfach auf NULL gesetzt und weitergemacht. Aber hier sollte doch dann alles weitere abgebrochen werden und eine Fehlermeldung angezeigt werden. Es macht ja keinen Sinn mit einer $id weiterzuarbeiten die NULL ist.
$id = isset($_GET['id']) ? intval($_GET['id']) : NULL;  

// Hier generell die Frage: Wieso hast du auf Seite 1 alle Daten in hidden-Feldern und holst sie hier wieder aus dem POST-Array. Du hast die Daten ja auch in der Datenbank in der Tabelle piloten_bewerbung. Ich würde die Daten auf Seite 1 nur anzeigen (ohne hidden-Feld). Das Comment Feld als Textarea natürlich drinnen lassen. Und die ID dann entweder über ein hidden-Feld per POST oder über die URL per GET (Ich weiß nicht wie deine Seite 1 momentan aussieht).
    $pilot_id=$_POST["pilot_id"]; 
    $vorname=$_POST["vorname"]; 
    $nachname=$_POST["nachname"];
    $mail=$_POST["mail"];
    $passwort=md5($_POST["passwort"]);
    $passwort2=($_POST["passwort"]);
    $postleitzahl=$_POST["plz"];
    $ort=$_POST["ort"];
    $heimatflughafen=$_POST["heimatflughafen"];
    $letzter_standort=$_POST["basis"];
    $ivaoid=$_POST["ivaoid"];
    $vatsimid=$_POST["vatsimid"];
    $other=$_POST["other"];
    $reg_datum=$_POST["reg_datum"];
    $geburtstag=$_POST["geburtstag"];
//Für die Mail musst du den Comment eigentlich nicht escapen. Nur wenn du ihn in der Datenbank speichern musst. Sonst sind nachher in der Mail hässliche Escape-Zeichen.
    $mailinput = mysql_real_escape_string($_POST['reject_comment']); 

// Ist denn der Pilot überhaupt schon in der Tabelle piloten? Ich würde hier nur die Tabelle piloten_bewerbung nehmen. Ich verstehe es so, dass sich ein Pilot bewirbt und damit in die Tabelle piloten_bewerbung kommt. Nach der Aktion des Admins kommt dann der Pilot aus der Tabelle piloten_bewerbung raus und wird in die Tabelle piloten geschoben. Das LIMIT 1 kannste dir auch schenken, da du hoffentlich keine doppelten IDs vergibst.
 $abfrage = "SELECT
                    `piloten_bewerbung`.`id`,
                    `piloten_bewerbung`.`vorname`,
                    `piloten_bewerbung`.`nachname`,
                    `piloten_bewerbung`.`mail`,
                    `piloten_bewerbung`.`passwort`,
                    `piloten_bewerbung`.`plz`,
                    `piloten_bewerbung`.`ort`,
                    `piloten_bewerbung`.`heimatflughafen`,
                    `piloten_bewerbung`.`basis`,
                    `piloten_bewerbung`.`ivaoid`,
                    `piloten_bewerbung`.`vatsimid`,
                    `piloten_bewerbung`.`other`,
                    `piloten_bewerbung`.`reg_datum`,
                    `piloten_bewerbung`.`geburtstag`,
                    `piloten`.`pilot_id`,
                    `piloten`.`passwort`,
                    `piloten`.`vorname`,
                    `piloten`.`nachname`,
                    `piloten`.`geburtstag`,
                    `piloten`.`strasse`,
                    `piloten`.`postleitzahl`,
                    `piloten`.`ort`,
                    `piloten`.`mail`,
                    `piloten`.`ivaoid`,
                    `piloten`.`vatsimid`,
                    `piloten`.`heimatflughafen`,
                    `piloten`.`benutzergruppe`,
                    `piloten`.`letzter_standort`
            FROM 
                     piloten_bewerbung,piloten
                     
            Where `piloten_bewerbung`.`id` = $id 
            Limit  1";
            
$ergebnis = mysql_query($abfrage);

// Du solltest unbedingt mit { und } und mit Einrückungen arbeiten. Sonst erkennt man nachher gar nicht mehr welches Statement in welchem Fall ausgeführt wird.
    if ($ergebnis)

// Eine Schleife über ein einzelnes Dataset macht auch wenig Sinn. Das Statement würde so reichen: $dataset = mysql_fetch_array($ergebnis);
              while ($dataset = mysql_fetch_array($ergebnis))
 
if ($_POST['submit_button'] == "Add pilot") {
        $abfrage2="INSERT INTO piloten
        SET     pilot_id='$pilot_id',
            vorname='$vorname',
            nachname='$nachname',
            mail='$mail',
            passwort='$passwort',
            plz='$plz',
            ort='$ort',
            heimatflughafen='$heimatflughafen',
            letzter_standort='$letzter_standort',
            ivaoid='$ivaoid',
            vatsimid='$vatsimid',
            geburtstag='$geburtstag'";
            
$sender = "info@americanblue-va.com";
$empfaenger = "".$dataset['mail']."";
$betreff = "Your Application on AmericanBlue-VA";
$mailtext = "Dear $vorname $nachname,\n thank you for applicate on AmericanBlue-va.com.\n We have accept your application.\n\nYour Data:\n<b>Pilot ID:</b> $pilot_id \n<b>Password:</b> $passwort2\n\n With immediate effect you can login on http:\\www.americanblue-va.com\n\n The hole staff wish you a plasent time with us and the Community\n\n <b>Your AmericanBlue-Va Team</b>";
mail($empfaenger, $betreff, $mailtext, "From: $sender ");

print"<p>You add <blockquote>Pilot <b>$pilot_id</b>$vorname $nachname!<blockquote></p>";

}

 else if ($_POST['submit_button'] == "Delete Pilot Application") 
{
$loesch = mysql_query("DELETE FROM piloten_bewerbung WHERE id = '$id'");
 
$sender = "info@americanblue-va.com";
$empfaenger = "".$dataset['mail']."";
$betreff = "Your Application on AmericanBlue-VA";
$mailtext = "$mailinput";
mail($empfaenger, $betreff, $mailtext, "From: $sender ");

print "You has rejected this Application";
} 



else {
print "There is an failure in the script";
}           
 
?><br />

Sorry, muss jetzt Schluss machen...
Morgen gehts evtl weiter.
 
Zurück