• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Formularscript mit Multiple function

Status
Für weitere Antworten geschlossen.

Odo

Neues Mitglied
Hi Leute :)


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 '<img src="http://www.seite.de/ok.gif" border="0"><font face=arial size=2 color="#4F4F4F"><b>  Vielen Dank für Deine Nachricht! <a href="/index1.php?page=1">Hier</a> gehts es wieder zur Startseite!';
  mysql_close($link);
    }

   else {
    ?>



und dieser Teil an der Stelle, an der die Funktion eingebunden wird:
PHP:
<?php



// Nachrichten
# Nicht alle Felder ausgefüllt
$err[0] = '<font face=arial size=2 color="#FF0000"><b>Da hat sich leider ein Fehler eingemogelt </b></font><img src="http://www.seite.de/smiley_zwinker.gif" border="0"><br />';

# Kein Name eingegeben
$err[1] = '<br /><font face=arial size=2 color="#FF0000"><b>- Du hast Deinen Namen nicht eingetragen!</b></font>';

# Ungültige E-Mailadresse eingegeben
$err[2] = '<br /><font face=arial size=2 color="#FF0000"><b>- Deine e-Mail-Adresse ist nicht richtig!</b></font>';

# Kein Betreff eingegeben
$err[3] = '<br /><font face=arial size=2 color="#FF0000"><b>- Du hast keinen Titel fürs Video eingetragen!</b></font>';

# Keine Nachricht eingegeben
$err[4] = '<br /><font face=arial size=2 color="#FF0000"><b>- Du hast den Link zum Video vergessen!</b></font>';

# Ungültiger Sicherheitscode
$err[5] = '<br /><font face=arial size=2 color="#FF0000"><b>- Ungültiger Sicherheitscode</b></font>';

# Alle Felder sind OK
$ok = '<img src="http://www.seite.de/ok.gif" border="0"><font face=arial size=2 color="#4F4F4F"><b>  Vielen Dank für Deine Nachricht!</b></font><br /><br />';


?>

<br> <br> <br>
 <div align="center"><font face=arial size=3 color="#4F4F4F"><b>VIDEO HINZUFÜGEN!</b></font></div>
<br>
<form name="kontaktformular" action="<? echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="hidden" name="sent" value="1"></input>
<input type="hidden" name="ip" value="$ip"></input>


<table witdh=100% width="500" align="center">
<tr><td colspan="2">
<?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 = '<span style="color:red">'.$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 .= '</span><br /><br />';
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)));
?></td>
</tr>
<tr>
<td width="150"><strong><font face=arial size=2 color="#4F4F4F">Dein Name:</font></strong></td>
<td><input name="name" type="text" value="<? echo $name; ?>" size="40" maxlength="100"></td></tr>
<tr>
<td width="150"><p><strong><font face=arial size=2 color="#4F4F4F">E-Mail Adresse:</font></strong><br></td>
<td><input name="email" type="text" id="email" value="<? echo $email; ?>" size="40" maxlength="100"></td></tr>
<tr>
<td width="150"><strong><font face=arial size=2 color="#4F4F4F">Titel:</font></strong></td>
<td><INPUT NAME="betreff" TYPE="text" id="betreff" value="<? echo $betreff; ?>" SIZE="40" maxlength="100"></td></tr>
<tr>
<td width="150"><strong><font face=arial size=2 color="#4F4F4F">Text! </font></strong></td>
<td><textarea name="nachricht" cols="40" rows="4" wrap="VIRTUAL" id="nachricht"><? echo $nachricht; ?></textarea></td></tr>
<tr>
<td width="150">&nbsp;</td>
<td>&nbsp;</td>
</tr>



   </td>


  </tr>
</table>

 



</table>  <div align="center">    <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#FFFFFF" bgcolor="#000000" width=100%>
  <tr>
    <td valign="center">



    <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>
<tr>
<td width="150">&nbsp;</td>


<td><input type="submit" value="Abschicken" name="submit">
<input name="xpas" type="hidden" id="xpas" value="<? echo $pas; ?>" />
</td></tr>
</table>
</form>
 
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.


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.


Gruß
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben