Formularscript mit Multiple function

Hi Leute :slight_smile:

ich habe ein fertiges formularscript, was allerdings nicht sauber funktioniert.

Es soll 2 funktionen erfüllen:

  1. Werte aus den formularfeldern in eine tabelle einer DB eintragen
    → das funktionert auch super !

  2. Eine e-mail an eine bestimmte adresse schicken
    → das funktioniert leider nicht.

  3. Bei auftretenden fehlern, wie beispielsweise keine emailaddy eingegeben etc wird kein fehler angezeigt.

Hier das script:

dieser Teil steht am anfang des codes:
[PHP]<?php
if($sent == 1)
{
$my_host = „x“;
$my_dbname = „x“;
$my_user = „x“;
$my_pass = „x“;
$my_tablename = „x“;

$datum = date(„Y.m.d“);
$uhrzeit = date(„H:i:s“);
$ip = $_SERVER[‚REMOTE_ADDR‘];
$link = mysql_connect($my_host, $my_user, $my_pass);
if (!$link)
die(„Kann den Server nicht erreichen.“);
if (!mysql_select_db($my_dbname, $link))
die(„Kann die Datenbank nicht anwählen.“);
$sql = „INSERT INTO $my_tablename (location, poster, email, titel, datum, zeit, ip)“;
$sql.= „VALUES (‚$nachricht‘, ‚$name‘, ‚$email‘, ‚$betreff‘, ‚$datum‘, ‚$uhrzeit‘, ‚$ip‘)“;
$donesql = MYSQL_QUERY($sql);

if($donesql) echo ‚ Vielen Dank für Deine Nachricht! Hier gehts es wieder zur Startseite!‘;
mysql_close($link);
}

else {
?>[/PHP]

und dieser Teil an der Stelle, an der die Funktion eingebunden wird:
[PHP]

<?php // Nachrichten # Nicht alle Felder ausgefüllt $err[0] = 'Da hat sich leider ein Fehler eingemogelt
'; # Kein Name eingegeben $err[1] = '
- Du hast Deinen Namen nicht eingetragen!'; # Ungültige E-Mailadresse eingegeben $err[2] = '
- Deine e-Mail-Adresse ist nicht richtig!'; # Kein Betreff eingegeben $err[3] = '
- Du hast keinen Titel fürs Video eingetragen!'; # Keine Nachricht eingegeben $err[4] = '
- Du hast den Link zum Video vergessen!'; # Ungültiger Sicherheitscode $err[5] = '
- Ungültiger Sicherheitscode'; # Alle Felder sind OK $ok = ' Vielen Dank für Deine Nachricht!

'; ?>




VIDEO HINZUFÜGEN!

<?php $name = trim(strip_tags($_POST['name'])); $email = trim(strip_tags($_POST['email'])); $betreff = trim(strip_tags($_POST['betreff'])); $nachricht = trim(strip_tags($_POST['nachricht'])); if(isset($_POST['submit'])){ $ip = $_SERVER['REMOTE_ADDR']; $host = gethostbyaddr($ip); $timestamp = time (); $datum = date ("Y.m.d",$timestamp); $uhrzeit = date ("H:i:s",$timestamp); $msg = ''.$err[0]; if($name == ''){ $msg .= $err[1]; $error = true; } if(!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $email)){ $msg .= $err[2]; $error = true; } if($betreff == ''){ $msg .= $err[3]; $error = true; } if($nachricht == ''){ $msg .= $err[4]; $error = true; } if(base64_decode(base64_decode(base64_decode(trim(strip_tags($_POST['xpas']))))) != trim(strip_tags($_POST['code']))){ $msg .= $err[5]; $error = true; } $msg .= '

'; if($error != true){ $sys_nachricht = "-- Kontakformularanfrage --\n\nBetreff: $betreff\nName: $name\nE-Mail: $email\n\nNachricht:\n$nachricht\n\nIP: $ip\nHost: $host\nGesendet am $datum um $uhrzeit."; mail($sys_webmaster, $sys_betreff, $sys_nachricht, $sys_absender); $name = NULL; $betreff = NULL; $email = NULL; $nachricht = NULL; echo $ok; }else{ echo $msg; } } srand(); $zufall = rand(100000, 999999); $pas = base64_encode(base64_encode(base64_encode($zufall))); ?>
Dein Name:

E-Mail Adresse:

Titel:
Text! <? echo $nachricht; ?>
   
<tr>
  <td width="150"><strong><font face=arial size=2 color="#4F4F4F">Sicherheitscode:</font></strong></td>
  <td><img src="captcha_form.php?pa_s=<? echo $pas; ?>" alt="Captcha" border="1" /></td>
</tr>
<tr>
  <td width="150"><strong><font face=arial size=2 color="#4F4F4F">Sicherheitscode <br>
  wiederholen: </font></strong></td>
  <td><input name="code" type="text" id="code" size="20" maxlength="50" /></td>
</tr>
<tr>
  <td width="150">&nbsp;</td>
  <td>&nbsp;</td>
</tr>
 
[/PHP]

fehlermeldung?
testest du das lokal oder auf einem server im netz?

Nils aka XraYSoLo

ich teste es auf meinem server. möchte aber ungern hier links posten, da ich die entsprechenden files eh wieder lösche.

es gibt keinerlei fehlermeldungen, nur leider treten die genannten probleme auf und ich weiß nicht wie ich das beheben kann.

  1. Eine e-mail an eine bestimmte adresse schicken
    → das funktioniert leider nicht.
  1. Bei auftretenden fehlern, wie beispielsweise keine emailaddy eingegeben etc wird kein fehler angezeigt.

Gruß