1Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
241
241
EMPFEHLEN
-
Ich bin grad echt am verzeifeln. Ich habe folgendes Script
Leider liefert mir dieses, nur den Wert 0 in die Variable kndNrPHP-Code:<?php
class kunde
{
public $kndNr=0;
public $dbh;
public function __construct(&$dbh)
{
if(is_object($dbh) && ($dbh instanceof PDO))
$this->dbh=$dbh;
else
$this->kndNr=time();
if(isset($_SESSION['kunde']))
{
$this->kndNr=$_SESSION['kunde'];
}
}
public function __destruct()
{
#print "Im Deskrutor";
$_SESSION['kunde'] = $this->kndNr;
}
public function getKundenNummer()
{
return $this->kndNr=$_SESSION['kunde'];
}
public function setKundenNummer($kennung, $passwort)
{
$this->kndNr=0;
if(!empty($kennung) && !empty($passwort))
{
try
{
$sql="SELECT k_kundennummer
FROM ws_kunden
WHERE k_kennung=:kennung
AND k_passwort=:passwort";
$result=$this->dbh->prepare($sql);
$result->bindParam(':kennung', $kennung, PDO::PARAM_STR, 20);
$result->bindParam(':passwort', $passwort, PDO::PARAM_STR, 32);
$result->execute();
$tmp=$result->fetchAll();
if(isset($tmp[0]['k_kundennummer']) && !empty($tmp[0]['k_kundennummer']))
{
$this->kndNr=(integer)$tmp[0]['k_kundennummer'];
}
$_SESSION['kunde']=$this->kndNr;
return $this->kndNr;
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
}
public function setKundenDaten($daten)
{
if(!is_array($daten)) return false;
try
{
$sql="INSERT INTO ws_kunden (k_name, k_vorname, k_plz, k_ort, k_strasse, k_email, k_passwort, k_kennung)
VALUES(:name,:vorname,:plz,:ort,:strasse,:email,:passwort,:kennung)";
$result=$this->dbh->prepare($sql);
$result->bindParam(':name', $daten['name'], PDO::PARAM_STR,30);
$result->bindParam(':vorname', $daten['vorname'], PDO::PARAM_STR,30);
$result->bindParam(':plz', $daten['plz'], PDO::PARAM_STR,6);
$result->bindParam(':ort', $daten['ort'], PDO::PARAM_STR,20);
$result->bindParam(':strasse', $daten['strasse'], PDO::PARAM_STR,30);
$result->bindParam(':email', $daten['email'], PDO::PARAM_STR,30);
$result->bindParam(':passwort', $daten['passwort'], PDO::PARAM_STR,32);
$result->bindParam(':kennung', $daten['kennung'], PDO::PARAM_STR,20);
$result->execute();
if($result->rowCount()==1)
{
print"Datensatz wurde eingetragen";
return true;
}
else
return false;
}
catch (PDOException $e)
{
echo $e->getMessage();
}
}
}
?>
WEnn ich oben bei der Definition, den Wert 0 weglassen, setzt er gar nichts
Kann mir jemand helfen?
-
Wenn du was machst liefert es den Wert 0?
Das ist eine Klasse, die liefert ganz viel versch. Sachen. Dein $this->kndNr wird in dieser eher undurchsichtigen (Code-Komentare währen hilfreich) Klasse mehrfach überschrieben. Also, zeig mal wie du die Klasse instanzierst und was du ausserhalb der Klasse machst um das 0 zu kriegen.---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Hallo Yaslaw,
schonmal vielen Dank für dein Posting
WEnn ich mich anmelde - setzt die Klasse den Wert 0 in die kndNr, das soll aber aus der Datenbank geholt werden - siehe setKundenNummer
Ich gebe die Daten ein und eigentlich sollte dann der Wert 1 aus der DB geholt werden - denn das ist meine Kundennummer...
Das wird aufegerufen, wenn die Eingabe vollzogen wurde!PHP-Code:if(isset($_POST['send']))
{
$art->setKundenNummer($_REQUEST['kennung'], $_REQUEST['passwort']);
}
Geändert von Divo1984 (30.01.12 um 14:25 Uhr)
-
if(!empty($kennung) && !empty($passwort))
Hast du diese 2 Werte mal mit var_dump() geprüft?
if(isset($tmp[0]['k_kundennummer']) && !empty($tmp[0]['k_kundennummer']))
Hast du diese 2 Werte mal mit var_dump() geprüft?
Eines von beiden gibt nicht das zurück was du willst. Ergo nimmt er das 0 das du am Anfang der Methode gesetzt hast
PS: Ich öffne hier auf der Arbeit keine fremden Zip-Dateien.....---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Danke Yaslaw, durch dich habe ich den Fehler gefunden! Der lag daran, dass ich das Passwort falsch übergeben habe! Jetzt klappt es einwandfrei!
-
Diesen Fall solltest du im Code abfangen und eine Meldung ausgeben, damit der USer weiss dass das PW falsch war.
[PHP] Debuggen mit var_dump()---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
Ähnliche Themen
-
C - Eine Variable aufsummieren bis zu einem Wert, Variable einfrieren und Werte auf..
Von Malte-Micha im Forum C/C++Antworten: 7Letzter Beitrag: 29.11.10, 14:10 -
[Ajax] POST-Variable enthält undefined, Script-Teil enthält richtigen Wert
Von WorldRacer im Forum Javascript & AjaxAntworten: 9Letzter Beitrag: 08.09.10, 19:54 -
Setup und Bereistellung setzt Abhängigkeiten falsch
Von Cheesygecko im Forum .NET CaféAntworten: 2Letzter Beitrag: 20.05.10, 09:08 -
suche jemanden, der mit in e. tcl Script 2 Variablen global setzt
Von Tinobee im Forum Stellenangebote (unentgeltlich)Antworten: 0Letzter Beitrag: 06.02.08, 14:48 -
if für Wert WAHR und FALSCH
Von platzwart im Forum Visual Basic 6.0Antworten: 3Letzter Beitrag: 27.07.07, 14:12





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren