PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 2 Fehler...


lusitaz
09.10.2006, 20:46:10
Hallo,

ich habe folgendes Skript:


<?php

// ====================================================================== ======

// F U N K T I O N E N

// ====================================================================== ======

// Funktion zum Laden der Templates

function template($template, $folder) {

$file = join("",file($folder."/".$template.".htm"));
$return = str_replace("\"","\\\"",$file);

return $return;
}


// Funktionen




function datensatz_einfuegen($dbhost, $dbuser, $dbpass, $dbname, $dbtable, $IP, $Kundennummer, $KEY, $Aktiv, $Firma, $Rechtsform, $Andere, $Branche, $Zusatz, $Kurze_Info, $Anrede, $Vorname, $Nachname, $Position, $eMail, $Homepage, $Telefon, $Telefax, $Strasse, $Postleitzahl, $Ort, $Land, $Agbs ) {

mysql_connect($dbhost, $dbuser, $dbpass);

$sql = "INSERT INTO `$dbtable` (`IP`, `Kundennummer`, `KEY`, `Aktiv`, `Firma`, `Rechtsform`, `Andere`, `Branche`, `Zusatz`, `Kurze_Info`, `Anrede`, `Vorname`, `Nachname`, `Position`, `eMail`, `Homepage`, `Telefon`, `Telefax`, `Strasse`, `Postleitzahl`, `Ort`, `Land`, `Agbs` ) VALUES ('$IP', '$Kundennummer', '$KEY', '$Aktiv', '$Firma', '$Rechtsform', '$Andere', '$Branche', '$Zusatz', '$Kurze_Info', '$Anrede', '$Vorname', '$Nachname', '$Position', '$eMail', '$Homepage', '$Telefon', '$Telefax', '$Strasse', '$Postleitzahl', '$Ort', '$Land', '$Agbs' )";

mysql_db_query ($dbname, $sql);

$sql = "SELECT ID FROM `$dbtable` WHERE `eMail`='$eMail' AND `KEY`='$KEY'";

$result = mysql_db_query ($dbname, $sql);

return mysql_result($result, 0, 'ID');

mysql_close();

}

function sende_mail($Branchenfuehrer, $webmaster, $Firma, $Rechtsform, $Andere, $Branche, $Zusatz, $Kurze_Info, $Anrede, $Vorname, $Nachname, $Position, $eMail, $Homepage, $Telefon, $Telefax, $Strasse, $Postleitzahl, $Ort, $Land, $LINK_act) {

$subject = "Ihr Eintrag in unsere Datenbank";
$headers .="MIME-Version: 1.0 \n";
$headers .="From:". "$Branchenfuehrer <$webmaster>" ."\n";
$headers .="X-Mailer: AutoMailer by XXX XXXXXXXX \n";
$headers .="X-Priority:$prio \n";
$headers .="Content-Type: text/plain; charset=$charset \n";
$date=date("d-m-Y");
$message_new = "$Branchenfuehrer
::::::::::::::::::::::::
xxxxxxxxxxxxxxxxxxx.de
........................

Sehr geehrte(r) $Anrede $Vorname $Nachname,

Sie haben sich mit folgenden Daten bei uns in die Branchendatenbank xxxxxxxxxxxxxxxxxxxxxxxxxxx.de eingetragen:

Firma: $Firma
Rechtsform: $Rechtsform $Andere

Branche: $Branche
Zusatz: $Zusatz

Kurze Info: $Kurze_Info

Ansprechpartner: $Anrede $Vorname $Nachname
Postition: $Position

Emailadresse: $eMail
Homepage: $Homepage
Telefon: $Telefon
Telefax: $Telefax
Strasse: $Strasse
Wohnort: $Postleitzahl $Ort ($Land)

Bitte überprüfen Sie diese Daten sorgfältig. Wenn Sie keine Fehler finden, klicken Sie bitte auf den folgenden Link, um Ihren Eintrag zu aktivieren:

$LINK_act

Mit freundlichen Grüßen

Ihr xxxxxxxxxxxxxxxxxxxxxx Team ";



return mail($eMail,$subject,$message_new,$headers);


$Nachricht = "Ihre Anfrage wurde verschickt. Sie werden in den n&auml;chsten Tagen von uns h&ouml;ren!";



}


// ====================================================================== ======

// H A U P T S C R I P T

// ====================================================================== ======

// Einbindung der Konfigurationsdatei

include("config.php");

$template_dir = $config['template_dir'];

// Fallunterscheidung

if ($_GET['action'] == "add") {

$KEY = rand(10000000,99999999);

$active = 0;

$ID = datensatz_einfuegen($config['dbhost'], $config['dbuser'], $config['dbpass'], $config['dbname'], $config['dbtable'], $_GET['IP'], $_GET['Kundennummer'], $KEY, $Aktiv, $_GET['Firma'], $_GET['Rechtsform'], $_GET['Andere'], $_GET['Branche'], $_GET['Zusatz'], $_GET['Kurze_Info'], $_GET['Anrede'], $_GET['Vorname'], $_GET['Nachname'], $_GET['Position'], $_GET['eMail'], $_GET['Homepage'], $_GET['Telefon'], $_GET['Telefax'], $_GET['Strasse'], $_GET['Postleitzahl'], $_GET['Ort'], $_GET['Land'], $_GET['Agbs']);

$LINK_act = $config['path'] . "?action=activate&ID=" . $ID . "&KEY=" . $KEY;

$LINK_del = $config['path'] . "?action=delete&ID=" . $ID . "&KEY=" . $KEY;

$status = sende_mail($config['Branchenfuehrer'], $config['webmaster'], $_GET['Firma'], $KEY, $aktiv, $_GET['Rechtsform'], $_GET['Andere'], $_GET['Branche'], $_GET['Zusatz'], $_GET['Kurze_Info'], $_GET['Anrede'], $_GET['Vorname'], $_GET['Nachname'], $_GET['Position'], $_GET['eMail'], $_GET['Homepage'], $_GET['Telefon'], $_GET['Telefax'], $_GET['Strasse'], $_GET['Postleitzahl'], $_GET['Ort'], $_GET['Land'], $LINK_act);

if ($status == 1) {$message= "Vielen Dank. Eine eMail mit einem Aktivierungslink wurde Ihnen per eMail zugeschickt.";} else {$message="Probleme beim Senden der eMail, bitte informieren Sie den Webmaster unter info@xxxxxxxxxxxxxxx.de";}

eval("echo \"".template("anmeldung_bericht", $template_dir)."\";");


}


if ($_GET['action'] == "search") {

$sb = $_GET['Suchbegriff'];

mysql_connect($config['dbhost'], $config['dbuser'], $config['dbpass']);

$sql = "SELECT * FROM `" . $config['dbtable'] . "` WHERE (`Firma`LIKE'%$sb%' OR `Branche`LIKE'%$sb%' OR `Ort`LIKE'%$sb%' OR `Postleitzahl`LIKE'%$sb%') AND `active`=1";

$result = mysql_db_query ($config['dbname'], $sql);

if (!$result) {

$Treffer = "leider keine Treffer!";

eval("echo \"".template("ausgabe_top", $template_dir)."\";");
eval("echo \"".template("ausgabe_closer", $template_dir)."\";");

} else {

$Treffer = mysql_num_rows($result);

eval("echo \"".template("ausgabe_top", $template_dir)."\";");

for ($cnt=0;$cnt<$Treffer;$cnt++) {

$Branche = mysql_result($result, $cnt, 'Branche');
$Firma = mysql_result($result, $cnt, 'Firma');
$Rechtsform = mysql_result($result, $cnt, 'Rechtsform');
$Andere = mysql_result($result, $cnt, 'Andere');
$Anrede = mysql_result($result, $cnt, 'Anrede');
$Vorname = mysql_result($result, $cnt, 'Vorname');
$Nachname = mysql_result($result, $cnt, 'Nachname');
$Strasse = mysql_result($result, $cnt, 'Strasse');
$Ort = mysql_result($result, $cnt, 'Ort');
$Postleitzahl = mysql_result($result, $cnt, 'Postleitzahl');
eval("echo \"".template("ausgabe_body", $template_dir)."\";");


}

eval("echo \"".template("ausgabe_closer", $template_dir)."\";");


}

mysql_close();

}



if ($_GET['action'] == "activate") {

mysql_connect($config['dbhost'], $config['dbuser'], $config['dbpass']);

$sql = "SELECT `active` FROM `" . $config['dbtable'] . "` WHERE `ID`='" . $_GET['ID'] . "' AND `KEY`='" . $_GET['KEY'] . "' AND `active`=0";

$result = mysql_db_query ($config['dbname'], $sql);

if (!$result) {

$message = "Keinen inaktiven Eintrag mit den angegebenen Daten gefunden!";

} else {

$sql = "UPDATE `" . $config['dbtable'] . "` SET `active`=1 WHERE `ID`='" . $_GET['ID'] . "' AND `KEY`='" . $_GET['KEY'] . "'";
mysql_db_query ($config['dbname'], $sql);
$message = "Eintrag aktiviert.";

}

eval("echo \"".template("aktivierung_bericht", $template_dir)."\";");

mysql_close();

}

if ($_GET['action'] == "delete") {

mysql_connect($config['dbhost'], $config['dbuser'], $config['dbpass']);

$sql = "SELECT `active` FROM `" . $config['dbtable'] . "` WHERE `ID`=" . $_GET['ID'] . " AND `KEY`=" . $_GET['KEY'];

$result = mysql_db_query ($config['dbname'], $sql);

if (!$result) {

$message = "Keinen Eintrag mit den angegebenen Daten gefunden!";

} else {

$sql = "DELETE FROM `" . $config['dbtable'] . "` WHERE `ID`=" . $_GET['ID'] . " AND `KEY`=" . $_GET['KEY'] . " LIMIT 1";
$result = mysql_db_query ($config['dbname'], $sql);
if ($result) {$message = "Eintrag entfernt.";}else{$message="Fehler.";}

}

eval("echo \"".template("aktivierung_bericht", $template_dir)."\";");

mysql_close();

}


?>


Folgende Fehlermeldung erhalte ich aber sobald ich im Formular auf den Button "Abschicken" klicke:

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 4 in C:\xxxxxxxx\xxxxxxxxxxxxx.de\registrierung.php on line 49

Warning: mail() [function.mail]: SMTP server response: 553 Invalid RFC821 mailbox specification. in C:\xxxxxxxx\xxxxxxxxxxxx.de\registrierung.php on line 103


Folgende Zeilen sind es:

Zeile 49:


return mysql_result($result, 0, 'ID');


und Zeile 99:


return mail($eMail,$subject,$message_new,$headers);


Kann mir bitte einer helfen? Bin schon seit Stunden dran und kann den SCH**** Fehler nicht finden... Kaffee hab ich auch keins mehr....

Danke Euch!

Gruß

Damir
09.10.2006, 21:23:59
Hi,

leider habe ich gerade nicht viel Zeit, daher kann ich dir nur auf die schnelle bei einem Problem helfen.....

Du willst also die ID der letzten INSERT Anweisung...

Nimm das mal:

return mysql_insert_id();

Siehe auch hier:

http://www.selfphp.de/funktionsreferenz/mysql_funktionen/mysql_insert_id.php

Damir

lusitaz
09.10.2006, 21:29:57
wow :D

Das funktioniert! Danke dir Damir!!

Hoffe es kann mir noch jemand helfen bezüglich des zweiten Fehlers.

Danke und Gruß

Lusitaz


PS. Damir, dein Buch (SELFPHP - Kochbuch) ist übrigens Spitze! Hoffe es kommt bald eine zweite Version mit noch mehr so gute Rezepte raus!

Damir
09.10.2006, 21:33:42
Kein Problem,

sorry wuerde dir gerne helfen aber habe wirklich keine Zeit - kann aber nur ein kleines Problem sein. Wird dir aber schon jemand helfen....

Wegen dem Buch. ebenfalls danke:-) Wegen der zweiten Version, schaun wir mal:-)

feuervogel
09.10.2006, 23:38:11
wegen des zweiten fehlers: lässt du das script auf einem test-server laufen? hast du es mal mit mail( 'deine@email.de' , 'testsubjekt' , 'testbody' ); probiert? einfach so, ohne irgendwas sonst?

feuervogel
09.10.2006, 23:39:30
ich hab via google u.a. auch sowas hier gefunden:

http://www.apachefriends.org/f/viewtopic.php?p=80553&sid=23046b4901539a17ad037d3a88d64ec1

lusitaz
10.10.2006, 12:57:48
Hi feuervogel,

ja, es läuft im mom auf einem Testserver lokal. Habs auf dem richtigen Server probiert und da bekomme ich zumindest keine Fehlermeldung.

Hab aber jetzt das Problem dass zwar alles ohne Fehlermeldung abläuft aber weder die Mail verschickt wird noch werden die Daten in die Datenbank eingetragen... :((((

Und ich habe überhaupt keine Ahnung warum das so ist. Denke ich werde heute Abend wieder unmengen an Kaffeekannen brauchen bis ich wieder feststelle dass ich doch ein absoluter Noob bin...

Danke und Gruß

feuervogel
10.10.2006, 13:37:00
wegen der mysql-probleme kann ich dir folgendes empfehlen:

http://selfphp.com/forum/showthread.php?t=8195

lusitaz
14.10.2006, 00:09:34
Nabend Freunde,

so... nun sieht mein Skript so aus:



<?php



// Programmscript - Änderungen können zu elementaren Problemen führen!


// ====================================================================== ======

// F U N K T I O N E N

// ====================================================================== ======

// Funktion zur Laden der Templates

function template($template, $folder) {

$file = join("",file($folder."/".$template.".htm"));
$return = str_replace("\"","\\\"",$file);

return $return;
}


// Funktionen




function datensatz_einfuegen($dbhost, $dbuser, $dbpass, $dbname, $dbtable, $IP, $Kundennummer, $KEY, $Aktiv, $Firma, $Rechtsform, $Andere, $Branche, $Zusatz, $Kurze_Info, $Anrede, $Vorname, $Nachname, $Position, $eMail, $Homepage, $Telefon, $Telefax, $Strasse, $Postleitzahl, $Ort, $Land, $Agbs ) {

$con = mysql_connect($dbhost, $dbuser, $dbpass);

if(!($con)){ echo "Failed DB connect"; die; }

mysql_select_db($dbname);

$sql = "INSERT INTO `$dbtable` (`IP`, `Kundennummer`, `KEY`, `Aktiv`, `Firma`, `Rechtsform`, `Andere`, `Branche`, `Zusatz`, `Kurze_Info`, `Anrede`, `Vorname`, `Nachname`, `Position`, `eMail`, `Homepage`, `Telefon`, `Telefax`, `Strasse`, `Postleitzahl`, `Ort`, `Land`, `Agbs` ) VALUES ('$IP', '$Kundennummer', '$KEY', '$Aktiv', '$Firma', '$Rechtsform', '$Andere', '$Branche', '$Zusatz', '$Kurze_Info', '$Anrede', '$Vorname', '$Nachname', '$Position', '$eMail', '$Homepage', '$Telefon', '$Telefax', '$Strasse', '$Postleitzahl', '$Ort', '$Land', '$Agbs' )";

$dbresult = mysql_query ($sql);

if(!($dbresult)){ echo "Failed DB insert : ".mysql_error(); die; }

$sql = "SELECT ID FROM `$dbtable` WHERE `eMail`='$eMail' AND `KEY`='$KEY'";

$dbresult = mysql_query ($sql);

if(!($dbresult)){ echo "Failed DB select : ".mysql_error(); die; }

$returnvalue = mysql_insert_id();

mysql_close();

return $returnvalue;

}

function sende_mail($Branchenfuehrer, $webmaster, $Firma, $Rechtsform, $Andere, $Branche, $Zusatz, $Kurze_Info, $Anrede, $Vorname, $Nachname, $Position, $eMail, $Homepage, $Telefon, $Telefax, $Strasse, $Postleitzahl, $Ort, $Land, $LINK_act, $LINK_del) {

$subject = "Ihr Eintrag in unsere Branchendatenbank";
$headers .="MIME-Version: 1.0 \n";
$headers .="From:". "info@xxxxxxxxxx.de" ."\n";
$headers .="X-Mailer: AutoMailer by the Webmaster \n";
$headers .="X-Priority:$prio \n";
$headers .="Content-Type: text/plain; charset=$charset \n";
$date=date("d-m-Y");
$message_new = "$Branchenfuehrer
::::::::::::::::::::::::
xxxxxxxxxx.de
........................

Sehr geehrte(r) $Anrede $Vorname $Nachname,

Sie haben sich mit folgenden Daten bei uns in die Branchendatenbank http://www.xxxxxxxxxxx.de eingetragen:

Firma: $Firma
Rechtsform: $Rechtsform $Andere

Branche: $Branche
Zusatz: $Zusatz

Kurze Info: $Kurze_Info

Ansprechpartner: $Anrede $Vorname $Nachname
Postition: $Position

Emailadresse: $eMail
Homepage: $Homepage
Telefon: $Telefon
Telefax: $Telefax
Strasse: $Strasse
Wohnort: $Postleitzahl $Ort ($Land)

Bitte überprüfen Sie diese Daten sorgfältig. Wenn Sie keine Fehler finden, klicken Sie bitte auf den folgenden Link, um Ihren Eintrag zu aktivieren:

$LINK_act

$LINK_del

Mit freundlichen Grüßen

Ihr xxxxxxxxxxxxxx.de Team ";

return mail($eMail,$subject,$message_new,$headers);

$Nachricht = "Ihre Anfrage wurde verschickt. Sie werden in den n&auml;chsten Tagen von uns h&ouml;ren!";

}


// ====================================================================== ======

// H A U P T S C R I P T

// ====================================================================== ======

// Einbindung der Konfigurationsdatei

include("config.php");

$template_dir = $config['template_dir'];

// Fallunterscheidung

if ($_GET['action'] == "add") {

$KEY = rand(10000000,99999999);

$message = "";

$active = 0;

$ID = datensatz_einfuegen($config['dbhost'], $config['dbuser'], $config['dbpass'], $config['dbname'], $config['dbtable'], $_GET['IP'], $_GET['Kundennummer'], $KEY, $Aktiv, $_GET['Firma'], $_GET['Rechtsform'], $_GET['Andere'], $_GET['Branche'], $_GET['Zusatz'], $_GET['Kurze_Info'], $_GET['Anrede'], $_GET['Vorname'], $_GET['Nachname'], $_GET['Position'], $_GET['eMail'], $_GET['Homepage'], $_GET['Telefon'], $_GET['Telefax'], $_GET['Strasse'], $_GET['Postleitzahl'], $_GET['Ort'], $_GET['Land'], $_GET['Agbs']);

if ($ID != 0) {$message = $message."Vielen Dank. Die Einträge wurden gespeichert.";} else {$message = $message."Probleme beim speichern in die Datenbank, bitte informieren Sie den Webmaster unter info@xxxxxxxxxxx.de";}

$message = $message."<br><br>";

$LINK_act = $config['path'] . "?action=activate&ID=" . $ID . "&KEY=" . $KEY;

$LINK_del = $config['path'] . "?action=delete&ID=" . $ID . "&KEY=" . $KEY;

$status = sende_mail($config['Branchenfuehrer'], $config['webmaster'], $_GET['Firma'], $KEY, $aktiv, $_GET['Rechtsform'], $_GET['Andere'], $_GET['Branche'], $_GET['Zusatz'], $_GET['Kurze_Info'], $_GET['Anrede'], $_GET['Vorname'], $_GET['Nachname'], $_GET['Position'], $_GET['eMail'], $_GET['Homepage'], $_GET['Telefon'], $_GET['Telefax'], $_GET['Strasse'], $_GET['Postleitzahl'], $_GET['Ort'], $_GET['Land'], $LINK_act);

if ($status == 1) {$message = $message."Vielen Dank. Eine eMail mit einem Aktivierungslink wurde Ihnen per eMail zugeschickt.";} else {$message = $message."Probleme beim Senden der eMail, bitte informieren Sie den Webmaster unter info@xxxxxxxxxxx.de";}

eval("echo \"".template("anmeldung_bericht", $template_dir)."\";");


}


if ($_GET['action'] == "search") {

$sb = $_GET['Suchbegriff'];

mysql_connect($config['dbhost'], $config['dbuser'], $config['dbpass']);

$sql = "SELECT * FROM `" . $config['dbtable'] . "` WHERE (`Firma`LIKE'%$sb%' OR `Branche`LIKE'%$sb%' OR `Ort`LIKE'%$sb%' OR `Postleitzahl`LIKE'%$sb%') AND `active`=1";

$result = mysql_db_query ($config['dbname'], $sql);

if (!$result) {

$Treffer = "leider keine Treffer!";

eval("echo \"".template("ausgabe_top", $template_dir)."\";");
eval("echo \"".template("ausgabe_closer", $template_dir)."\";");

} else {

$Treffer = mysql_num_rows($result);

eval("echo \"".template("ausgabe_top", $template_dir)."\";");

for ($cnt=0;$cnt<$Treffer;$cnt++) {

$Branche = mysql_result($result, $cnt, 'Branche');
$Firma = mysql_result($result, $cnt, 'Firma');
$Rechtsform = mysql_result($result, $cnt, 'Rechtsform');
$Andere = mysql_result($result, $cnt, 'Andere');
$Anrede = mysql_result($result, $cnt, 'Anrede');
$Vorname = mysql_result($result, $cnt, 'Vorname');
$Nachname = mysql_result($result, $cnt, 'Nachname');
$Strasse = mysql_result($result, $cnt, 'Strasse');
$Ort = mysql_result($result, $cnt, 'Ort');
$Postleitzahl = mysql_result($result, $cnt, 'Postleitzahl');
eval("echo \"".template("ausgabe_body", $template_dir)."\";");


}

eval("echo \"".template("ausgabe_closer", $template_dir)."\";");


}

mysql_close();

}



if ($_GET['action'] == "activate") {

mysql_connect($config['dbhost'], $config['dbuser'], $config['dbpass']);

$sql = "SELECT `active` FROM `" . $config['dbtable'] . "` WHERE `ID`='" . $_GET['ID'] . "' AND `KEY`='" . $_GET['KEY'] . "' AND `active`=0";

$result = mysql_db_query ($config['dbname'], $sql);

if (!$result) {

$message = "Keinen inaktiven Eintrag mit den angegebenen Daten gefunden!";

} else {

$sql = "UPDATE `" . $config['dbtable'] . "` SET `active`=1 WHERE `ID`='" . $_GET['ID'] . "' AND `KEY`='" . $_GET['KEY'] . "'";
mysql_db_query ($config['dbname'], $sql);
$message = "Eintrag aktiviert.";

}

eval("echo \"".template("aktivierung_bericht", $template_dir)."\";");

mysql_close();

}

if ($_GET['action'] == "delete") {

mysql_connect($config['dbhost'], $config['dbuser'], $config['dbpass']);

$sql = "SELECT `active` FROM `" . $config['dbtable'] . "` WHERE `ID`=" . $_GET['ID'] . " AND `KEY`=" . $_GET['KEY'];

$result = mysql_db_query ($config['dbname'], $sql);

if (!$result) {

$message = "Keinen Eintrag mit den angegebenen Daten gefunden!";

} else {

$sql = "DELETE FROM `" . $config['dbtable'] . "` WHERE `ID`=" . $_GET['ID'] . " AND `KEY`=" . $_GET['KEY'] . " LIMIT 1";
$result = mysql_db_query ($config['dbname'], $sql);
if ($result) {$message = "Eintrag entfernt.";}else{$message="Fehler.";}

}

eval("echo \"".template("aktivierung_bericht", $template_dir)."\";");

mysql_close();

}


?>


Daten werden jetzt ohne Probleme in die Datenbank eingetragen. Was noch nicht funktioniert ist der Versand der Email... Könnt Ihr bitte freundlicherweise nochmal drüber schauen? Komme nämmlich nicht mehr weiter... Fehlermeldungen bekomme ich keine, er sagt: "Vielen Dank. Eine eMail mit einem Aktivierungslink wurde Ihnen per eMail zugeschickt."

Danke Euch im voraus!

Gruß

lusitaz
15.10.2006, 20:34:32
niemanden eine idee warum die mails nicht versendet werden? wäre wirklich für jede hilfe dankbar...

Opendix
15.10.2006, 20:54:04
zu dem eigentlichen mail()-Problem! Sicher das die nicht ankommt... überprüf mal die Spam-ordner!

dann weitere vorschläge:

Zeile zuviel

return mail($eMail,$subject,$message_new,$headers);

$Nachricht = "Ihre Anfrage wurde verschickt. Sie werden in den n&auml;chsten Tagen von uns h&ouml;ren!";


macht die zuweisung von $nachricht keinen Sinn da PHP die funktion bereits bei der return-Anweisung verlässt!

MySql-Connect
du rufst immer bevor du ein SQL_Statement absetzt mysql_connect auf..
definier doch einfach eine funcktion die den connect ausführt...
du verwendest dann mysql_db_query()
dazu:
http://ch2.php.net/mysql_db_query
Anmerkung: Diese Funktion ist seit PHP 4.0.6 veraltet. Verwenden Sie diese Funktion nicht. Stattdessen sollten Sie die Funktionen mysql_select_db() und mysql_query() verwenden.


verwende also mysql_select_db() und mysql_query()

Mysql-Close
dazu nur:
http://ch2.php.net/mysql_close
Die Verwendung von mysql_close() ist für gewöhnlich nicht notwendig, weil offene, nicht persistente Verbindungen automatisch mit Beendigung des PHP-Skripts geschlossen werden. Siehe auch Freigabe von Resourcen.

kannst du dir also sparen...

eval()

//Deine anweisung
eval("echo \"".template("anmeldung_bericht", $template_dir)."\";");
//warum verwendest du hier eval und nicht einfach:
echo template(...);


hää :P

for ($cnt=0;$cnt<$Treffer;$cnt++) {

$Branche = mysql_result($result, $cnt, 'Branche');
$Firma = mysql_result($result, $cnt, 'Firma');
$Rechtsform = mysql_result($result, $cnt, 'Rechtsform');
$Andere = mysql_result($result, $cnt, 'Andere');
$Anrede = mysql_result($result, $cnt, 'Anrede');
$Vorname = mysql_result($result, $cnt, 'Vorname');
$Nachname = mysql_result($result, $cnt, 'Nachname');
$Strasse = mysql_result($result, $cnt, 'Strasse');
$Ort = mysql_result($result, $cnt, 'Ort');
$Postleitzahl = mysql_result($result, $cnt, 'Postleitzahl');
eval("echo \"".template("ausgabe_body", $template_dir)."\";");


}


nun warum wieder eval()?
und was soll dir das bringen? du weist immer 10 variabeln irgendwelche werte zu die beim nächsten Datensatz wieder überschrieben werden... :S
am besten anstatt für jede variabel mysql_result() aufzurufen funktioniert sonst einfach auch mysql_fetch_assoc()

Ungeprüfte übernahme von Variabeln
Nun vielleicht kann man hier bei diesem Script nicht viel damit anfangen ausser irgendwelche Fehler auszulösen die aber weiter kaum schaden werden..
aber bitte prüf doch die EIngaben des Users auf korrektheit und verwende die nicht einfach so in deinem Script..
such mal bei google nach Sql-Injection.. wirst du einiges darüber finden!

so hast ml was zu tun, hoffe konnte dir helfen :)