Ich habe nun das nächste Problem, ich habe meine Klasse erweitert um eine Funktion UserExist die liefert mir immer false zurück
Ich weiß nur nicht warum, mir diese IMMER false liefert
PHP:
<?php
require 'classes/class_DB.php';
class userManagement extends DB
{
public $dbh;
public $userExist=false;
public function __construct(&$dbh)
{
parent::__construct();
if(is_object($dbh) && ($dbh instanceof PDO))
$this->dbh=$dbh;
}
public function UserExist($user)
{
try
{
$sql="SELECT u_id
FROM user
WHERE u_uname='$user'";
$result=$this->dbh->prepare($sql);
$result=$this->dbh->query($sql);
$tmp=$result->fetchAll(PDO::FETCH_ASSOC);
$ta=trim($tmp);
if(!empty($ta))
{
$this->userExist=false;
}
}
catch (PDOException $e)
{
echo $e->getMessage();
}
}
public function add($daten)
{
//Daten eintragen
if($this->userExist!==true)
{
#return false;
print"Dieser Username ist bereits vergeben!";
}
else
{
try
{
$sql="INSERT INTO user(u_uname,
u_password,
u_email,
u_vname,
u_nname,
u_plz,
u_ort,
u_strasse,
u_hnr,
u_geb_tag,
u_geb_mon,
u_geb_jahr,
u_code)
VALUES(:user,
:password,
:email,
:vname,
:nname,
:plz,
:ort,
:strasse,
:hnr,
:geb_tag,
:geb_mon,
:geb_jahr,
:code)";
$result=$this->dbh->prepare($sql);
$result->bindParam(':user', $daten['uname'], PDO::PARAM_STR,36);
$result->bindParam(':password', $daten['pw'], PDO::PARAM_STR,32);
$result->bindParam(':email', $daten['email'], PDO::PARAM_STR,60);
$result->bindParam(':vname', $daten['vname'], PDO::PARAM_STR,40);
$result->bindParam(':nname', $daten['nname'], PDO::PARAM_STR,32);
$result->bindParam(':plz', $daten['plz'], PDO::PARAM_STR,6);
$result->bindParam(':ort', $daten['ort'], PDO::PARAM_STR,32);
$result->bindParam(':strasse', $daten['strasse'], PDO::PARAM_STR,32);
$result->bindParam(':hnr', $daten['hnr'], PDO::PARAM_STR,7);
$result->bindParam(':geb_tag', $daten['geb_tag'], PDO::PARAM_STR,2);
$result->bindParam(':geb_mon', $daten['geb_mon'], PDO::PARAM_STR,2);
$result->bindParam(':geb_jahr', $daten['geb_jahr'], PDO::PARAM_STR,4);
$result->bindParam(':code', $daten['code'], PDO::PARAM_STR,32);
$result->execute();
if($result->rowCount()==1)
{
print"Datensatz wurde eingetragen";
return true;
}
else
return false;
}
catch (PDOException $e)
{
echo $e->getMessage();
}
}
}
}
?>
Ich weiß nur nicht warum, mir diese IMMER false liefert