PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen (http://www.selfphp.de/forum/showthread.php?t=23054)

Zet 30.03.2010 11:38:05

Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
Hallo und einen schönen Tag...

Ich habe ein kleines problem, was ich nicht ganz verstehe...

Ich arbeite an einem prog was übers netz von mehreren genutzt wird...

Ich hab in einer DB Tabelle ein datumsfeld was mit einem vom user mit einem timestamp befüllt wird... der sieht zum beispiel so aus 1269937164 die eigenschaften des feldes sind INT(10)

Jetzt möchte ich das wenn sich der User anmeldet, er nur die jeweiligen Datensätze von heute oder die älter sind als wiedervorlage zum nachträglichen bearbeiten anzeigen lassen...

Die in der Zukunft liegen möchte ich ausblenden das der user sie erst bearbeiten soll wenn das er den termin dazu hat und damit mehr übersicht uber seine Termine hat.

Mein Ansatz ist
$zeit = time();

$query = "SELECT * FROM wiedervorlage WHERE user='$_SESSION[username]' AND datum <= $zeit";

Wenn ich es alleine am rechner teste funktioniert es dann zeigt er mir ältere und die Datensätze von heute an, aber wenn das ein User macht bekommt er nur die von gestern ausgegeben und die heutigen werden nicht angezeigt...

Bin Neu hier und neu in php O_o

Hoffe mir kann Jemand helfen das zu verstehen ....


Grüße Zet

Indyk 30.03.2010 13:00:32

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
Hallo Zet,

der erste Schritt zu dem ich dir rate wäre zu vergleichen was bei deinen usern anderes passiert, sprich du könntest schauen was in den Variablen gespeichert ist. Du könntest natürlich auch gleich jedes statement mitloggen (z.b. in eine Datei) das ist nicht all zu schwer. Oder du speichert es in der Datenbank falls du mit php noch keine Datei operationen ausgeführt hast.

Sobald du die sachen verglichen hast, weisst du evtl. schon wo der fehler ist, und wenn nicht dann kannst du hier immernoch um hilfe bitten (- :

viel erfolg.

Zet 30.03.2010 14:43:58

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
es passiert nix anderes ich logge mich als user auf meinem Testrechner ein und alles funktioniert. Aber auf dem laufenden funktioniert es nicht ist aber 1 zu 1 dasselbe.

selbe db. selbe script. selbe version. alles identisch ...

bin am verzweifeln... im Moment bekommen meine Telefonistinnen alle angezeigt dass sind pro user über 100 da müssen die durchblicken...

hab keine ahnung woran es liegen könnte passiert übers netz was anderes als wenn ich es lokal mache???

Indyk 30.03.2010 15:29:54

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
Hallo Zet,

das kommt auf die Einstellungen drauf an. Wenn es eine alte php installation ist und "register globals" auf ON ist und du eine veriable hast die $username heißt könnte das die $_SESSION variable kompromittieren.

Auch wenn du glaubst das alles das selbe ist, selbes script etc. rate ich dir dazu dir das SQL statement welches du zusammenbaust mal ausgeben zu lassen um es zu vergleichen.

gff. poste mal ein statement welches funktioniert und eines das nicht funktioniert.

viel erfolg.

Zet 30.03.2010 15:37:51

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
die register_globals sind bei beiden "off"

ich versteh es nicht...

das funktioniert auf meinem Testrechner aber nicht auf dem laufenden

selbe xampp install

$query = "SELECT * FROM wiedervorlage WHERE user='$_SESSION[username]' AND datum <= $zeit";


was meinst du mit statement ausgeben??

Sorry bin echt noob

Indyk 30.03.2010 15:57:52

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
Hallo Zet,

ich meine
PHP-Code:

$query "SELECT * FROM wiedervorlage WHERE user='$_SESSION[username]' AND datum <= $zeit";
echo 
'Ausgeben:'$query


Zet 30.03.2010 16:12:00

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
kanns leider grad net testen weil se ja dran arbeiten

urvater 30.03.2010 17:02:12

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
Zitat:

Ich hab in einer DB Tabelle ein datumsfeld was mit einem vom user mit einem timestamp befüllt wird... der sieht zum beispiel so aus 1269937164 die eigenschaften des feldes sind INT(10)
....
$query = "SELECT * FROM wiedervorlage WHERE user='$_SESSION[username]' AND datum <= $zeit";
Ich würde dir empfehlen deine Datumsspalte in der DB auf einen Datum- oder Zeittyp einzustellen. Deine Query könnte dann viel einfacher aufgebaut werden.
PHP-Code:

$query "SELECT * FROM wiedervorlage WHERE user='".$_SESSION[username]."' AND datum <= NOW()"


Zet 31.03.2010 11:13:59

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
Danke werds gleich mal ausprobieren

Zet 31.03.2010 11:25:58

AW: Aktuelle Einträge in Datenbank mit heutigen datum vergleichen und anzeigen lassen
 
jetzt bekomm ich ein leeres feld 0000-00-00
die Termine sollen sich die telfonistinnen selber wählen können...
Damit Sie sich nicht verschreiben und ich bei das besser verarbeiten kann hab ich ne kleine vorauswahl getroffen..
Mein scrip dazu sieht so aus:

HAb da ewig dran gebastelt, wie gesagt bin anfänger in sachen php und programierung
echo "<select name='termin' size=\"1\">";
selected>
$now = time();
for ($i = 0 ; $i < 80 ; $i ++)
{
$timestamp = $now;
$date = date("d.m.Y",$timestamp);
$morgen = $now+1*24*60*60;
$date_morgen = date("d.m.Y",$morgen);
if(!isset($_POST['termin']))
{
if (date("d.m.Y",$_POST['termin'])==$date)
{
echo "<option value=\"".$timestamp."\" selected>".$date."</option>";
}
else
{
echo "<option value=\"".$timestamp."\">".$date."</option>";
}
}
else
{
if($date_morgen == $date)
{
echo "<option value=\"".$timestamp."\" selected>".$date."</option>";
}
else
{
echo "<option value=\"".$timestamp."\">".$date."</option>";
}
}
}
echo "</select>";

hab grad ein denkfehler glaub ich.

$_SESSION[datum2] = $_POST['termin'];

if (isset($wiedervorlage))
{

$query = "INSERT INTO wiedervorlage (vorname, name, strasse, hsnr, plz, ort, vorwahl, nummer, ansprechpartner, verteiler, niederlassung, user, user_id, datum, uhrzeit, bemerkung ) VALUES ('$_SESSION[vorname]', '$_SESSION[name]', '$_SESSION[strasse]', '$_SESSION[hsnr]', '$_SESSION[plz]', '$_SESSION[ort]', '$_SESSION[vorwahl]', '$_SESSION[nummer]', '$_SESSION[ansprechpartner]', '$_SESSION[verteiler]', '$_SESSION[niederlassung]', '$_SESSION[username]', '$_SESSION[user_id]', $_SESSION[datum2]', '$_SESSION[uhrzeit]', '$_SESSION[bemerkung]')";
$dummy = mysql_query($query) or die(mysql_error());
}
Wie mach ich das eigentlich bunt das ihr das besser lesen könnt??
War noch nie in nem Forum angemeldet....hört sich vielleicht doof an ist aber so... :-)

Hat jemand vielleicht einen anderen ansatz oder idee wie man das lösen könnte?... Ich schau grad stupide in eine richtiung, dabei führen ja viele Wege nach ROM...


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:17:54 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.