2Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
11
11
ZUGRIFFE
451
451
EMPFEHLEN
-
Hi,
Hab mal eine kleine frage
Ich hab ne kleine abfrage gemacht in der ich überprüfe wann die einzelnen user ihre passwörter das letzte mal geändert haben und wann sie es wieder tun müssen...
Nun zu meinem problem...
Wenn die Abfrage eingeschaltet ist wird der user dessen passwort zu alt ist eben dazu gezwungen sein passwort zu ändern... und wenn in der Datenbank noch kein eingetragens Datum für einen user drinn steht (standart : 0000-00-00 00:00:00) benutzt er das eben genannte datum und will das der user sein passwort ändert... Das aber möchte ich VERMEIDEN...
Gibt´s nicht in php irgend nen befehl das wenn die spalte "null" ist, die abfrage ignoriert wird?
Hier mein script ....
PHP-Code:$strtotime1 = strtotime ("now");
$strtotime2 = strtotime($AppUI->user_pass_date);
$result = ($strtotime1 - $strtotime2)/(3600*24);
$var = $_GET["a"];
if ($var != "chpwd"){
if ($result >= dPgetSysVal('PasswordIntervall')){
header("Location: http:// test.project.com/a=chpwd");
exit();
}
}
-
So vllt:
Wenn die Variable leer ist sonst nochPHP-Code:if($variable == NULL) {
}
PHP-Code:if(empty($variable)) {
}
Tutorials: Ajax JSON Chat PHP
-
Normale Vergleiche mit NULL sind immer FALSE
NULL == NULL
ergibt FALSE
PHP-Code:if(is_null($variable)){
//TODO: Im Fall von NULL
}
---------------------------------------------------------------------------------------------------
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
-
14.12.11 16:31 #4
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
Kannst du nicht das Alter bereits bei der SQL Abfrage mit datediff ermitteln
Code sql:1
SELECT datediff(now(), dein_datum) AS alter_pwd FROM deine_tabelle
und den IF-Block mit diesem Wert füttern!?Geändert von tombe (14.12.11 um 16:34 Uhr) Grund: Alias geändert.
Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
-
14.12.11 16:46 #5
Habe ich dich jetzt falsch verstanden?
NULL == NULL ergibt doch immer true.
Test: http://codepad.org/Bzo4yerKmfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
wie genau meinst das jetz tombe?
Eigentlich wollte ich nur fragen obs einfach was gibt, womit das wenn meine spalte "NULL" ist einfach nicht zum Passwort ändern gezwungen wird.. z.b irgendwie so..
PHP-Code:if ($result >= 9000000000){
header("Location: http://dotproject.lotas.de/index.php?m=public&a=chpwd&dialog=1&user_id=");
exit();
if ($strtotime2 == NULL ){
do nothing
}
-
Okay hab ne ganz einfache Lösung gefunden...
Trotzdem danke
Wens intressiert:
sowas meinte ichPHP-Code:if ($AppUI->user_pass_date == "0000-00-00 00:00:00")
{
//Do Nothing
}
else if ($result >= 90 ) {
header("Location: http://dotproject.test.com/index.php?a=chpwd");
exit();
}
Geändert von TerraX10 (14.12.11 um 18:00 Uhr)
-
-
Hi,
auf null wird immer mit '===' geprüft! Dieser Operator bewirkt, dass auch der Datentyp gleich sein muss. Denn- null zeigt an, dass die Variable keinen Wert besitzt. Die 0 (Null als Zahl) oder ein leerer String bzw. leeres Array ist ein Wert.
- PHP Castet null in den jeweils anderen Datentyp.
Folgende Bedingungen ergeben true, auch wenn die Variablen nicht null sind!
Die Variablen sind zwar leer bzw. beinhalten 0 (Null als Zahl), sind aber dennoch nicht null.PHP-Code:$string = "";
$int = 0;
$float = 0.0e10;
$array = array();
if ($string == null) {
echo "\$string ist null!? ";
if ($string === null) {
echo "Ja!";
} else {
echo "Nein!";
}
echo "\n";
}
if ($int == null) {
echo "\$int ist null!? ";
if ($int === null) {
echo "Ja!";
} else {
echo "Nein!";
}
echo "\n";
}
if ($float == null) {
echo "\$float ist null!? ";
if ($float === null) {
echo "Ja!";
} else {
echo "Nein!";
}
echo "\n";
}
if ($array == null) {
echo "\$array ist null!? ";
if ($array === null) {
echo "Ja!";
} else {
echo "Nein!";
}
echo "\n";
}
/*
* Ausgabe:
* $string ist null!? Nein!
* $int ist null!? Nein!
* $float ist null!? Nein!
* $array ist null!? Nein!
*/
In PHP ergibt das immer true. In MySQL ergäbe das NULL.
Mehr Informationen dazu sind im PHP-Handbuch im Absatz Vergleichs-Operatoren zu finden.
Gruß Kyôya StefanGeändert von Kyôya (14.12.11 um 22:29 Uhr)
Oracle Certified MySQL 5 Professional Developer
Zend Certified PHP 5.3 Engineer
Vorträge, Webinare, etc im Mayflower - Blog
-
Tutorials: Ajax JSON Chat PHP
-
15.12.11 12:07 #11
- Registriert seit
- Apr 2007
- Beiträge
- 46
Nachtrag:
Mit dem Eintrag
SET ANSI_NULLS OFF
vor der Abfrage ist es möglich, auch NULL-Werte abzufragen, zB.
Code :1 2
SET ANSI_NULLS OFF SELECT * from myTable WHERE eingeloggt = NULL
Setzt Du ANSI_NULLS OFF so kannst Du = und <> mit NULL Abfragen.
Das funktioniert mWn nur bei SQL
-
Oracle Certified MySQL 5 Professional Developer
Zend Certified PHP 5.3 Engineer
Vorträge, Webinare, etc im Mayflower - Blog





Zitieren



Login






[PHP][Snippet] Array zu XML konvertieren