Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

PHP Zeit

Frage Entwicklung PHP

Mitglied: WinHasser

WinHasser (Level 1) - Jetzt verbinden

27.03.2006, aktualisiert 09.04.2006, 5237 Aufrufe, 10 Kommentare

Hi,

ich hab gerade ein Problem. Ich will bei PHP mit Zeit rechnen und es dann in eine MySQL Tabelle speichern. Zum Beispiel aktulle Datum + 5 Tage. Das mach ich gerade so:

$date1 = date("y-");
$date2 = date("m-");
$date3 = date("d")+ $row['dauer'];
$date4 = date(" H:i:s");

$date = $date1 . $date2 . $date3 . $date4;

$sql = "INSERT INTO
work
SET
username = '".$user['ID']."',
name = '" . $_GET['mission'] . "',
bis = '" . $date . "'";

mysql_query($sql) OR die(mysql_error());

Das Problem ist das wenn ich den 28. habe und das + 5 rechne kommt 32 raus. Den Tag gibt es aber logischer Weise nicht, also schreibt php in die Tabelle 0000-00-00. Wie macht man das eigendlich ich hab nix gefunden!!! Bin in PHP noch nich der PRO!!!

Danke im vorraus!!!
Mitglied: Schrottie
27.03.2006 um 11:23 Uhr
Moin.

mach es doch wie folgt:

$time = mktime()+(60*60*24*5); Timestap von UNIX + (Sec*Min*Std*Tage)
$datum = date("d.m.Y");

Damit hast du kein Problem bei Monats oder Jahreswechsel. Habe leider grade nicht die Möglichkeit zu testen ob es so richtig ist. Müsste aber. Ansonsten schau dich mal hier um:

http:
www.php.net/manual/de/function.mktime.php
Bitte warten ..
Mitglied: WinHasser
27.03.2006 um 11:47 Uhr
Danke für die schnelle Hilfe!!! Hab in der Tabelle den Typ der Spalte "bis" auf INT gesetzt und den Quelltext so geändert:

$date = mktime() + ($row['dauer']*60*60*24);

$sql = "INSERT INTO
work
SET
username = '".$user['ID']."',
name = '" . $_GET['mission'] . "',
bis = '" . $date . "'";

mysql_query($sql) OR die(mysql_error());
Bitte warten ..
Mitglied: 25768
29.03.2006 um 16:14 Uhr
Hallo,

wenn ich ein Datumsfeld in einem Integerfeld speichern muss ist da irgendetwas falsch.

MySQL hat genügend (und meiner Meinung nach bessere) Zeitfunktionen als PHP.

Ich empfehle dir mal einen Blick in die Dokumentation :
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html

Besonders DATE_ADD() sollte dir dann gefallen.

Gruß
Andi
Bitte warten ..
Mitglied: Schrottie
29.03.2006 um 16:30 Uhr
Ich nehme immer varchar mit 10 Zeichen dd-mm-yyyy
Bitte warten ..
Mitglied: 25768
29.03.2006 um 18:24 Uhr
Hallo,

naja Schrottie, lol ?
Abgesehen davon, das da CHAR(10) sinvoller wäre als VARCHAR(10)

Für was gibt es in MySQL Datentypen wie:
- DATE
- DATETIME
- YEAR
- TIME
- TIMESTAMP
?
Bitte warten ..
Mitglied: Zwiebelkopf
08.04.2006 um 17:08 Uhr
Tach möcht mich hier mal mit einmischen wenns erlaubt is

Und zwar wie siht das dann mit DATETIME aus wenn ich da ein paar minuten draufsetzten will?

bis jetzt siehts so aus aber da kommt nur mist raus

$now2 = date("Y-m-d H:i:s");
$dauer = $now2 + date("H:15:s");
Bitte warten ..
Mitglied: Schrottie
08.04.2006 um 17:36 Uhr
01.
$time = mktime(); // Schreibt den Timestap in die Variable 
02.
$now = date("Y-m-d H:i:s", $time); // Gibt die Aktuellen Werte aus: 2006-04-08 17:34:18  
03.
 
04.
$time +=15*60; // Fügt 15 Min. hinzu 
05.
$now = date("Y-m-d H:i:s", $time); // Schreibt die neue Zeit: 2006-04-08 17:49:18  
Bitte warten ..
Mitglied: WinHasser
08.04.2006 um 21:45 Uhr
Das ist müll

Du musst es wenn dann so wie ich es am Anfang gemacht habe:

$date1 = date("y-");
$date2 = date("m-");
$date3 = date("d")+ $row['dauer'];
$date4 = date(" H:i:s");

$date = $date1 . $date2 . $date3 . $date4;

Aber das ist Müll weil du da das Problem hast das du Zeiten bekommst die es gar nicht gibt! Wie z.b den 32.13.2006 oder 25:64 Uhr.
Bitte warten ..
Mitglied: Schrottie
08.04.2006 um 22:29 Uhr
WinHasser was ist Müll?

kann dir leider nicht ganz folgen
Bitte warten ..
Mitglied: 25768
09.04.2006 um 17:14 Uhr
Hi,

eine Liste findest du auf :
http://dev.mysql.com/doc/refman/4.0/de/date-and-time-functions.html

also dann in deinem Bsp

$sql_update = "UPDATE tbl SET time = DATE_ADD(time, INTERVAL xbeliebige MINUTE) WHERE id = $richtige_id";

Gruß
Andi
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...