+ Antworten
Ergebnis 1 bis 2 von 2

Thema: PHP eMail Formular in Joomla Beitrag

  1. #1
    Neu an Board
    Registriert seit
    27.11.2009
    Beiträge
    5
    Bedankte sich
    0
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard PHP eMail Formular in Joomla Beitrag

    Hi Leute,
    ich bin seit längerer zeit daran ein eMail Formular, welches in PHP erstellt ist, in einen Beitrag einzustellen.
    Das Formular soll direkt über die Navi aufzurufen sein.
    Ich bin Über das Plugin ADDphp von Run Digital gestolpert und rufe mein PHP-Script mit folgender Befehlszeile auf: {rdaddphp file=myphpfiles/anfragemail.php}.
    Der wesentliche Teil meines Scripts anbei.

    Soweit so gut.
    Mein Problem besteht beim Abschicken des Fomulars, welches über den Aufruf
    <form action="<? echo $_POST['PHP_SELF'] ?>"
    verschickt wird, sprich sich selbst wieder aufruft.
    Aber genau hier habe ich das Phänomen, dass die Abfrage, ob die Mail korrekt verschickt wurde, nicht greift.
    Die Mail wird erfolgreich verschickt,das Formular wird aber einfach erneut aufgerufen, ohne Statusmeldung.

    Trage ich in die Form Action den Scriptnamen ein bekomme ich die Fehlermeldung, dass das Script nicht existiert... Logisch, wird ja über das PlugIn aufgerufen und liegt physisch in einem ganz anderen Ordner.

    Vielleicht kann mir irgendjemand hier weiterhelfen.

    Code:
    <form action="<? echo $_POST['PHP_SELF'] ?>" method="post" name="anfrage">
             <div id="container0">
                     <div id="header">
                             <div id="header_links"><img src="images/54.jpg" alt="" /></div>
                     </div>
                     <div id="cbody">
                             
                       <div id="body_links">
                         <img src="images/turm.gif" alt="" width="116" height="189" /><br>
                       </div>
    						   <div id="body_rechts">
    						     <h2>&nbsp;</h2>
    						     <h2>	Anfrageformular:</h2>
    						     <p>&nbsp;</p>
    						     <table border="0">
                                   <tr>
                                     	<td width="161" >Firma</td>
    						  		 <td colspan='3'><input 
    
    type='text' name='firma' size='20' value=''></td>
                                   </tr>
                                   <tr>
                                     	<td >Name * </td>
    						  		 <td width='178'><input 
    
    name='name' type='text' id='name' size='20' value=''></td>
                                   </tr>
                                   <tr>
                                     	<td >Vorname * </td>
    						  		 <td width='178'><input 
    
    name='vorname' type='text' id='vorname' size='20' value=''></td>
                                   </tr>
                                   <tr>
                                     	<td >Straße  </td>
    							  		<td><input name='strasse' 
    
    type='text' id='strasse' size='20' value=''></td>
    								<td width="-2"></td>
                                   </tr>
                                   <tr>
                                     	<td >PLZ  </td>
    							  		<td><input name='plz' 
    
    type='text' id='plz' size='20' value=''></td>
                                   </tr>
                                   <tr>
                                     	<td >Ort  </td>
    							  		<td><input 
    
    name='pflicht_ort' type='text' id='pflicht_ort' size='20' value=''></td>
                                   </tr>
                                   <tr>
                                     	<td >Telefon * </td>
    							  		<td><input name='telefon' 
    
    type='text' id='telefon' size='20' value=''></td>
                                   </tr>
                                   <tr>
                                     	<td>Fax </td>
    							  		<td><input type='text' 
    
    name='fax' size='20' value=''></td>
                                   </tr>
                                   <tr>
                                     	<td >e-Mail * </td>
    							  		<td><input name='email' 
    
    type='text' id='email' value='' size='20'></td>
                                   </tr>
                                   <tr>
                                     <td>&nbsp;</td>
                                     <td>&nbsp;</td>
                                   </tr>
                                   <tr>
                                   		<td align='right'><div align='left'>Art der 
    
    Fahrt</div></td>
    							  		
    							  <td colspan=2> Ihre Nachricht *<br>
    								<textarea rows='7' name='text' 
    
    cols='60'></textarea>
    							  </td>
    							</tr>
    							   <tr>
                                     <td>&nbsp;</td>
                                     <td>&nbsp;</td>
                                   </tr>
                                   <tr>
    									<td><input type='submit' 
    
    value='Absenden' name='submit'> <span style='font-size:-1;'></span></td> <br>				
    
    	
                                   </tr>
                                   <tr>
                                     	
                                   </tr>							   
                                 </table>
    
    				   </div>
    
                     </div>
                     <div id="footer">
                            
                     </div>
             </div>
    		 </form>
    <div id='bn_frame' style='position:absolute; display:none; height:198px; width:205px; 
    
    background-color:#ced7d6; overflow:hidden;'>
    <iframe src='./bytecal/bytecal.php'  style='width:208px; margin-left:-1px; border:0px; 
    
    height:202px; background-color:#ced7d6; overflow:hidden;' border='0'>	
    </iframe>
    </div>
    
    <?
    //EINSTELLUNGEN
    $mail = "xxxx@gmx.de"; //Der Empfänger des Formulars
    $prefix = "test"; //Text der vor dem vom User eingegebenen Betreff erscheint
    $betreff_pflicht = false; //Muss der User einen Betreff eingeben? Ja = true, Nein = false
    $confirm = false; //Soll der Absender eine Bestätigung erhalten? Ja = true, Nein = false
    $subject = "Website-Anfrage";
    function checkAddress($address)
    {
    return preg_match('/^[a-z0-9.+_-]+@([a-z0-9-]+.)+[a-z]+$/i', $address);
    }
    if( $_POST["submit"])
    {
    $email = $_POST["firma"];
    $name  = $_POST["name"];
    $vorname  = $_POST["vorname"];
    $email = $_POST["email"];
    $strasse = $_POST["strasse"];
    $plz = $_POST["plz"];
    $ort = $_POST["ort"];
    $telefon = $_POST["telefon"];
    $fax = $_POST["fax"];
    $hinfahrt = $_POST["hinfahrt"];
    $busbereitstellung = $_POST["busbereitstellung"];
    $abfahrtsort = $_POST["abfahrtsort"];
    $rueckfahrt = $_POST["rueckfahrt"];
    $rueckfahrt_um = $_POST["rueckfahrt_um"];
    $rueckfahrt_in = $_POST["rueckfahrt_in"];
    $rueckankunft = $_POST["rueckankunft"];
    $rueckankunft_in = $_POST["rueckankunft_in"];
    $fahrt_von = $_POST["fahrt_von"];
    $fahrt_nach = $_POST["fahrt_nach"];
    $personenzahl = $_POST["personenzahl"];
    $transfer = $_POST["transfer"];
    $kueche = $_POST["kueche"];
    $skikoffer = $_POST["skikoffer"];
    $uebernachtungen = $_POST["uebernachtungen"];
    						
    												  
    $thema = $_POST["thema"];
    $text  = $_POST["text"];
    $betreff = $_POST["betreff"];
    
    if($prefix != "" AND $betreff != "") $prefix .= " - ";
    
    if( $name != "" && $text != "" and checkAddress($email) == true AND ($betreff_pflicht == false OR 
    
    $betreff != "" ))
    {
    	$header = 'From: '.$vorname.' '.$name.' <'.$email.">".'' . "\r\n" .
    	'Reply-To: '.$email.'' . "\r\n" .
    	'X-Mailer: PHP/' . phpversion();
    	   
    						   
    						   
    mail($mail, $subject." Thema: ".$transfer, "\n"."Liebes S&F-Tours-Team,\n\n".$text."\n"."\n\nBitte 
    
    setzen sie sich mir mir in Verbindung.\nMeine Telefonnummer: ".$telefon."\n\nFolgende Daten sind 
    
    relevant:\n\nHinfahrt am: ".$hinfahrt."\n"."Busbereitstellung ab: 
    
    ".$busbereitstellung."\n"."Abfahrtsort: ".$abfahrtsort."\n"."\nRückfahrt am: 
    
    ".$rueckfahrt."\n"."Rückfahrt um: ".$rueckfahrt_um."\n"."Rückfahrt in: 
    
    ".$rueckfahrt_in."\n"."\nRückankunft um: ".$rueckankunft."\n"."Rückankunft in: 
    
    ".$rueckankunft_in."\n"."\nFahrt von: ".$fahrt_von."\n"."Fahrt nach: 
    
    ".$fahrt_nach."\n"."\nPersonenzahl: ".$personenzahl."\n"."\nTransfer-Art: 
    
    ".$transfer."\n"."\n\nAusstattung/Ausmaß: \nKüche: ".$kueche."\n"."Skikoffer: 
    
    ".$skikoffer."\n"."Übernachtungen: ".$uebernachtungen."\n"."
    										  
    										   
    										   \nVielen 
    
    Dank\n".$vorname." ".$name, $header);
    
                                               if($confirm == true)
                                               {
                                                       $msg = "Danke ".$vorname." ".$name.", \nIhre 
    
    Nachricht wurde übermittelt. Nachfolgend sehen Sie Ihren Text:\n\n\n".$text;
                                                       mail($email, $prefix.$betreff, $msg, $header);
                                               }
    
                                               echo"<p style='color:#000000;'>Danke, Ihre Nachricht 
    
    wurde verschickt</p>$form 
    										   <td><input 
    
    type='submit' value='Schließen' name='schliessen' onClick='self.close()'> <span 
    
    style='font-size:-1;'></span></td>";
                                       } else { echo"<p style='color:#FF0000;'>Sie haben nicht alle 
    
    Felder ausgefüllt oder Ihre eMail-Adresse ist ungültig</p>$form"; }
                              }
                              else echo $form;
    
                              ?>

    Viele grüße
    Tom

  2. #2
    Moderator Avatar von Orpheus2510
    Registriert seit
    17.10.2006
    Beiträge
    14.126
    Bedankte sich
    164
    Erhielt 3.389 Danksagungen
    in 3.059 Beiträgen

    Standard

    Warum benutzt du keine Formularkomponente für Joomla, um das E-Mail-Formular zu erstellen und zu verwalten?
    Gruß, Orpheus2510
    Kein Support per PN! | Tutorial Migration J1.5 --> J2.5 | Joomla braucht dich!

+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein