Cgi Forum
https://www.cgiforum.de/

Richtig einbinden
https://www.cgiforum.de/viewtopic.php?f=19&t=296
Seite 1 von 1

Autor:  Anarias [ 19.02.2008 21:54 ]
Betreff des Beitrags:  Richtig einbinden

Hi, hab das Script gecustomized, aber es funktioniert leider nicht.
Problem: Wenn ich nichts eingebe macht er nichts. Wenn ich alles korrekt ausfülle macht er genauso wenig was. Ich habe mal das Ursprungsbeispiel hochgeladen und da funktioniert alles.
Jemand nen tipp?

Wieso steht im Ursprungsbeispiel in der template.html immer value="v_vorname" etc. drin und nicht value=""?

config.php
Zitat:
<?
// -----------------------------------------
// Das Copyright (Link) darf nicht entfernt werden.
// Eine Copyright freie Version können Sie für einmalig
// 20 ,- € inkl. 19% MwSt. erwerben, hierzu möchten wir
// Sie bitten mit uns über das Kontaktformular
// ( http://www.kontaktformular-script.de/kontakt.php )
// in Verbindung zu treten.
// -----------------------------------------
$txt=array();
#Texte vor den Eingabefeldern
$txt['anrede']="Anrede";
$txt['vorname']="Vorname";
$txt['nachname']="Nachname";
$txt['firma']="Firma";
$txt['telefon']="Telefon";
$txt['email']="E-Mail";
$txt['nachricht']="Nachricht";

$txt2=array();
$txt2['absenden']="Kontaktieren!";
$txt2['erfolg']="Vielen Dank für Ihre Nachricht. Wir werden uns umgehend mit Ihnen in Verbindung setzen.";//Ausgabe, falls die E-Mails erfolgreich versendet wurden.


$errors=array();
#Ausgaben, falls die jeweiligen Felder keinen Inhalte hatten, also leer waren
$errors['vorname']="Bitte geben Sie den Vornamen ein.";
$errors['nachname']="Bitte geben Sie den Nachnamen ein.";
$errors['email']="Bitte geben Sie die E-Mail ein.";
$errors['nachricht']="Bitte geben Sie eine Nachricht ein.";

$errors['nachricht_senden']="Nachricht konnte nicht versendet werden.";//Ausgabe, falls die E-Mails nicht versendet werden konnten.

$mail_data=array();
$mail_data['email_admin']="anarias@web.de";//An diese Adresse wird dem Admin seine Email geschickt
$mail_data['email_absender']="anarias@web.de";//Diese Adresse wird als Absender angegeben
$mail_data['name_absender']="Support anarias.de";//Dieser Name wird als Absender angegeben
$mail_data['betreff_admin']="Kontaktaufnahme auf der Seite www.anarias.de";//Betreff der E-Mail an den Admin
$mail_data['betreff_kunde']="Ihre Anfrage auf www.anarias.de";//Betreff der E-Mail an den Kunden
$mail_data['weiterleitung']="http://anarias.de";//Auf diese Adresse wird nach erfolgreichem Versand weitergeleitet
?>


kontakt.php
Zitat:
<?
// -----------------------------------------
// Das Copyright (Link) darf nicht entfernt werden.
// Eine Copyright freie Version können Sie für einmalig
// 20 ,- € inkl. 19% MwSt. erwerben, hierzu möchten wir
// Sie bitten mit uns über das Kontaktformular
// ( http://www.kontaktformular-script.de/kontakt.php )
// in Verbindung zu treten.
// -----------------------------------------
error_reporting(0);
include("header.php");
include("config.php");

function check_email($email)
{
return (eregi('^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-.]?[0-9a-zA-Z])*\\.[a-zA-Z]{2,4}$',$email)==false ? false : true);
}

$content=file_get_contents("kontakt.html");
$show_form=true;
if(isset($_POST['submit']))
{
$v_anrede=htmlentities($_POST['anrede']);
$v_vorname=htmlentities($_POST['vorname']);
$v_nachname=htmlentities($_POST['nachname']);
$v_firma=htmlentities($_POST['firma']);
$v_telefon=htmlentities($_POST['telefon']);
$v_email=htmlentities($_POST['email']);
$v_nachricht=htmlentities($_POST['nachricht']);
$v_email = preg_replace( "/[^a-z0-9 !?:;,.\/_\-=+@#$&\*\(\)]/im", "", $v_email );
$v_email = preg_replace( "/(content-type:|bcc:|cc:|to:|from:-)/im", "", $v_email);
if(empty($v_vorname))echo $errors['vorname']."<br>";
elseif(empty($v_nachname))echo $errors['nachname']."<br>";
elseif(empty($v_email)||!check_email($v_email))echo $errors['email']."<br>";
elseif(empty($v_nachricht))echo $errors['nachricht']."<br>";
else
{
$show_form=false;
$data=array();
$data['ip'] = $_SERVER['REMOTE_ADDR'];
$data['host'] = gethostbyaddr($data['ip']);
$data['browser'] = $_SERVER['HTTP_USER_AGENT'];
$data['ref'] = $_SERVER['REQUEST_URI'];
$data['ref2'] = $_SERVER['HTTP_REFERER'];
$email_admin=file_get_contents("email_admin.txt");
$email_kunde=file_get_contents("email_kunde.txt");
foreach($txt as $n=>$w)
{
$email_admin=str_replace("{v_".$n."}",${"v_$n"},$email_admin);
$email_kunde=str_replace("{v_".$n."}",${"v_$n"},$email_kunde);
}
foreach($data as $n=>$w)
{
$email_admin=str_replace("{".$n."}",$w,$email_admin);
$email_kunde=str_replace("{".$n."}",$w,$email_kunde);
}
$header = "Content-Type: text/plain; charset=\"utf-8\"\r\n";
$header .= "Content-Transfer-Encoding: 7bit\r\n";
$header .= "FROM: ".$mail_data['name_absender']."<".$mail_data['email_absender'].">\r\n";
$header .= "Reply-To: ".$mail_data['name_absender']."<".$mail_data['email_absender']."\r\n";
$header .= "X-Mailer: PHP/" . phpversion()."\r\n";
$sent_admin=@mail($mail_data['email_admin'],
$mail_data['betreff_admin'],
$email_admin,
$header);

$sent_kunde=@mail($v_email,
$mail_data['betreff_kunde'],
$email_kunde,
$header);

if($sent_admin&&$sent_kunde)header("Location: ".$mail_data['weiterleitung']);
else
{
echo $errors['nachricht_senden']."<br>";
$show_form=true;
}
}
}
else
{
$v_vorname="";
$v_nachname="";
$v_email="";
$v_nachricht="";
}
if($show_form)
{
foreach($txt as $n=>$w)
{
$content=str_replace("{".$n."}",$w,$content);
$content=str_replace("{v_".$n."}",${"v_$n"},$content);
}
$content=str_replace("{submit}",$txt2['submit'],$content);
echo $content;
}
include("footer.php");
?>


und zu guter letzt das Kontaktformular an sich

Zitat:
<h3>Kontaktformular</h3>
<form action="kontakt.php" method="POST">
<table width="485" border="0" cellspacing="0" cellpadding="2">
<tr bgcolor="#efefef">
<td width="125">Anrede:</td>
<td width="360"><select name="anrede">
<option value="Herr" >Herr</option>
<option value="Frau" >Frau</option>
</select></td>
</tr>
<tr>
<td>Vorname:</td>
<td><input name="vorname" type="text" style="width:180" value="" size="18">
* </td>
</tr>
<tr bgcolor="#efefef">
<td>Nachname</td>
<td bgcolor="#efefef"><input name="nachname" type="text" style="width:180" value="" size="18">
* </td>
</tr>
<tr>
<td>Firma:</td>
<td><input name="firma" type="text" style="width:180" value="" size="18"></td>
</tr>
<tr bgcolor="#efefef">
<td>Telefon:</td>
<td><input name="telefon" type="text" style="width:180" value="" size="18"></td>
</tr>
<tr>
<td>E-Mail:</td>
<td><input name="email" type="text" style="width:180" value="" size="18">
* </td>
</tr>
<tr>
<td valign="top">Mitteilung: * </td>
<td><textarea name="nachricht" cols="25" rows="8" style="width:99%"></textarea></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input name="absenden" type="submit" value="submit"></td>
</tr>
</table>
</form>

Autor:  Anarias [ 21.02.2008 00:28 ]
Betreff des Beitrags: 

Hey,

Problem gelöst.

Autor:  Anarias [ 22.02.2008 01:17 ]
Betreff des Beitrags: 

okay, habe doch noch ein Problem.

Versand und Empfang klappt alles problemlos. Eigentlich sollte doch nun auf www.anarias.de weitergeleitet werden. Siehe config.php

Tut er allerdings nicht. Er bleibt bei kontakt.php stehen, obwohl alles einwandfrei funktioniert hat.

Code siehe oben.

Jemand eine Idee?

Autor:  admin [ 26.02.2008 08:36 ]
Betreff des Beitrags: 

Anarias hat geschrieben:
okay, habe doch noch ein Problem.

Versand und Empfang klappt alles problemlos. Eigentlich sollte doch nun auf www.anarias.de weitergeleitet werden. Siehe config.php

Tut er allerdings nicht. Er bleibt bei kontakt.php stehen, obwohl alles einwandfrei funktioniert hat.

Code siehe oben.

Jemand eine Idee?


Morgen,

bitte baue mal in die kontakt.php an stelle von

error_reporting(0);

das ein

error_reporting(E_ALL);

Das bezweckt das der Server von Ihnen alle Fehler anzeigt, mir kommt es vor das der Header schon ehr gesendet wird als die Umleitung auf die neue Seite kommt, daher wird die Umleitung nicht gemacht.

Wenn Sie die Änderung gemacht haben, schreiben Sie bitte hier den Link zu der Datei und ich schau es mir an.

mfg. Nico Schubert

Autor:  Anarias [ 27.02.2008 14:47 ]
Betreff des Beitrags: 

Die Vermutung stimmt. Ich bekomme folgende Fehlermeldungen


Warning: Cannot modify header information - headers already sent by (output started at /mnt/web7/40/02/51731402/htdocs/header2.php:18) in /mnt/web7/40/02/51731402/htdocs/kontakt.php on line 72

Warning: Cannot modify header information - headers already sent by (output started at /mnt/web7/40/02/51731402/htdocs/header2.php:18) in /mnt/web7/40/02/51731402/htdocs/kontakt.php on line 97

Zeile 72:

if($sent_admin&&$sent_kunde)header("Location: ".$mail_data['weiterleitung']);
else
{
echo $errors['nachricht_senden']."<br>";
$show_form=true;
}

Die Zeile 97 habe ich verändert. Habe versucht eine Weiterleitung zu erzwingen:

header("Location: http://www.anarias.de");
include("footer.php");

Autor:  admin [ 27.02.2008 14:52 ]
Betreff des Beitrags: 

Anarias hat geschrieben:
Die Vermutung stimmt. Ich bekomme folgende Fehlermeldungen


Warning: Cannot modify header information - headers already sent by (output started at /mnt/web7/40/02/51731402/htdocs/header2.php:18) in /mnt/web7/40/02/51731402/htdocs/kontakt.php on line 72

Warning: Cannot modify header information - headers already sent by (output started at /mnt/web7/40/02/51731402/htdocs/header2.php:18) in /mnt/web7/40/02/51731402/htdocs/kontakt.php on line 97

Zeile 72:

if($sent_admin&&$sent_kunde)header("Location: ".$mail_data['weiterleitung']);
else
{
echo $errors['nachricht_senden']."<br>";
$show_form=true;
}

Die Zeile 97 habe ich verändert. Habe versucht eine Weiterleitung zu erzwingen:

header("Location: http://www.anarias.de");
include("footer.php");


Hallo,

was haben Sie in der header2.php in Zeile 18 stehen?

mfg. Nico Schubert

Autor:  Anarias [ 28.02.2008 03:53 ]
Betreff des Beitrags: 

Da steht nur das schließende html Tag

Autor:  admin [ 28.02.2008 08:24 ]
Betreff des Beitrags: 

Anarias hat geschrieben:
Da steht nur das schließende html Tag


Bin mir fasst sicher das hinter dem HTML Tag ein Lehrzeichen ist oder noch lehre Zeilen in der Datei kommen, dies muss weg. Dann wird es auch gehen.

mfg. Nico

Autor:  Anarias [ 28.02.2008 11:36 ]
Betreff des Beitrags: 

Mmh, nee das wars nicht.
Habe die Ursprungsheader Datei aus dem Zip-File verwendet.
Das Einzige das sich geändert hat ist, dass die Fehlermeldung verschwunden ist, aber die Weiterleitung macht er trotzdem nicht.

Autor:  admin [ 28.02.2008 12:16 ]
Betreff des Beitrags: 

Anarias hat geschrieben:
Mmh, nee das wars nicht.
Habe die Ursprungsheader Datei aus dem Zip-File verwendet.
Das Einzige das sich geändert hat ist, dass die Fehlermeldung verschwunden ist, aber die Weiterleitung macht er trotzdem nicht.


Wo kann man das Script abrufen?

mfg. Nico

Autor:  Anarias [ 28.02.2008 13:33 ]
Betreff des Beitrags: 

habe das Formular solange es nicht einwandfrei funktioniert nicht dauerhaft online stehen. Script entspricht angaben oben. Wenn notwendig kann ich es auch nachher schnell einbinden und heute die Zeit über online stehen lassen

Autor:  admin [ 28.02.2008 13:56 ]
Betreff des Beitrags: 

Anarias hat geschrieben:
habe das Formular solange es nicht einwandfrei funktioniert nicht dauerhaft online stehen. Script entspricht angaben oben. Wenn notwendig kann ich es auch nachher schnell einbinden und heute die Zeit über online stehen lassen


Wenn ich es nicht Testen kann, kann ich Ihnen nicht weiterhelfen.

mfg. Nico

Autor:  Anarias [ 28.02.2008 15:46 ]
Betreff des Beitrags: 

okay,

ist eingebunden

http://www.anarias.de/contact.php

Autor:  admin [ 28.02.2008 16:34 ]
Betreff des Beitrags: 

Mmh, was sehr eigenartig ist das keine Fehlermeldung kommt. Leider können wir da kein Support geben. Bitte wenden Sie sich an Ihren Webhoster und erfragen Sie, wieso die weiterleitung per header(); nicht geht.

mfg. Nico Schubert

Seite 1 von 1 Alle Zeiten sind UTC [ Sommerzeit ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/