Problem mit Datenbank Suche

Grunge

Erfahrenes Mitglied
Hallo,

ich versuche seit längerer Zeit folgendes hinzubekommen.

Ich will eine Registrierung in einer Website machen. Bevor die neuen Daten aber in die Datenbank eingetragen werden, soll überprüft werden ob der Benutzername/Email bereits vergeben ist/sind, falls nicht, soll nur noch überprüft werden ob du Email und Passwort mti wiederholungen übereinstimmen. Schaut es euch an:

Code:
<?php
Error_reporting(E_ALL);
include "_functions.php";
include "_connect.php";
$error_msg="<br>";

if((isset($_POST['reg_user'])) AND (isset($_POST['reg_pwd'])) AND (isset($_POST['reg_pwd2'])) AND (isset($_POST['reg_vorn'])) AND (isset($_POST['reg_nachn'])) AND (isset($_POST['reg_b_1'])) AND (isset($_POST['reg_b_2'])) AND (isset($_POST['reg_b_3'])) AND (isset($_POST['reg_plz'])) AND (isset($_POST['reg_ort'])) AND (isset($_POST['reg_email1']))AND (isset($_POST['reg_email2']))AND (isset($_POST['reg_geschl']))){

$sql4=true;
}else{
$sql4=false;
$error_msg=$error_msg."Bitte alle Felder ausfüllen<br>";
}
$actcode=generate_actcode();

if($_POST['reg_pwd1']==$_POST['reg_pwd2']){
  $pwd=$_POST['reg_pwd1'];
  $sql1=true;
}else{
$sql1=false;
$error_msg=$error_msg."Passwörter stimmen nicht überein!<br>";
}

if($_POST['reg_email1']==$_POST['reg_email2']){
$email=$_POST['reg_email1'];
$sql2=true;
}else{
$sql=false;
$error_msg=$error_msg."EMail-Adressen stimmen nicht überein!<br>";
}

if(isset($_POST['reg_agb'])){
$sql3=true;
}else{
$error_msg=$error_msg."Bitte aktzeptiere die AGBs!<br>";
$sql3=false;
}

if($_POST['reg_geschl']=0){
$gender="m";
}else{
$gender="w";
}
$i=0;
$nick=$_POST['reg_user'];
$birthday=convert_date3($_POST['reg_b_1'],$_POST['reg_b_2'],$_POST['reg_b_3']);


//Prüfen ob Benutzername/Email bereits vergeben sind
$sql='
        SELECT
                *
          FROM
                `usr_profile`
          WHERE
                `nickname`="'.mysql_real_escape_string($nick).'"
        ';
        
$result=mysql_query($sql) or die(mysql_error());
$ergebnis=mysql_fetch_assoc($result);
if($ergebnis>0) {

$error_msg=$error_msg."Benutzername/Email bereits vergeben!<br>";

}else{

if($sql1 AND $sql2 AND $sql3 AND $sql4){
$mysql="INSERT INTO usr_profile
       (nickname,passwort,vorname,nachname,birthday,plz,ort,geschlecht,email,actcode,activated)
        VALUES ('".$nick."','".MD5($pwd)."','".$_POST['reg_vorn']."','".$_POST['reg_nachn']."','".$birthday."',
        '".$_POST['reg_plz']."','".$_POST['reg_ort']."','".$gender."','".$email."','$actcode','0')";
        
$result=mysql_query($mysql) or die(mysql_error());
}else{
header('Location: index.php?section=error&msg='.$error_msg.'');
exit();
}
}

jede funktion die aufgerufen wird funktioniert. nur diese fehlermeldung bekomme ich:

Warning: Cannot modify header information - headers already sent by (output started at C:\Programme\xampp\htdocs\test\_functions.php:29) in C:\Programme\xampp\htdocs\test\reg_save.php on line 75

thx im vorraus



ich bekomme keine fehlerm
 
Such mal nach den Stichwörtern der Fehlermeldung. Dieser Fehler ist ein alter Hut und wurde bereits häufig erläutert.
 
...oder kurz gesagt vor dem Aufruf
PHP:
header('Location: index.php?section=error&msg='.$error_msg.'');
darf nix ausgegeben werden. Was aber offensichtlich enweder in einer Deiner beiden include Dateien oder in dem hier gegebenen Code passiert.

vg Clemens
 
Zurück