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
GELÖST

MYSQL-DATEDIFF Ausgabe

Frage Entwicklung Datenbanken

Mitglied: SuatAl

SuatAl (Level 1) - Jetzt verbinden

30.10.2009 um 13:26 Uhr, 6724 Aufrufe, 3 Kommentare

Hallo an alle,

bin gerade ziemlich am Verzweifeln!!!

Folgendes Problemchen:

Ich habe eine MYSQL-DB mit verschiedenen Terminen. Nun möchte ich anhand von DATEDIFF() das aktuelle Datum mit
diesen Terminen Vergleichen und die Differenz ausgeben lassen.
Die Differenz wird auch ausgerechnet- ich bekomme als Ausgabe leider nur:

ARRAY oder array[1] bzw. resource_id#6

hier der Code: Vielleicht könnt Ihr den Fehler erkennen?

01.
function differenz($termine,$dat) { 
02.
    $sql3="SELECT DATEDIFF('$termine','$dat')"
03.
    $result3=@mysql_query($sql3); 
04.
    $r=mysql_fetch_assoc($result3); 
05.
    if(!$result3) die('Datenbankfehler3: ' .mysql_error());  
06.
    var_dump($r);      -----------------> Hier kommt z.B. folgende Ausgabe:    array(1) { ["DATEDIFF('2010-10-10','2009-10-30')"]=>  string(3) "345" }  
07.
    echo $r;                ------------------> Hier kommt fogende Ausgabe:      Array 
08.
    While($s=mysql_fetch_array($result3)) 
09.
10.
        echo $s;        ------------------> Hier kommt folgende Ausgabe:      Arraybool(false)  
11.
    } 
Wie bekomme ich denn die 345 aus dem Array $r ausgegeben?

Vielen Dank im voraus!!!

MfG,
SuatAl
Mitglied: SamTrex
30.10.2009 um 13:35 Uhr
Hi,
blicke nicht so ganz durch ....
Aber wenn $r ein Array ist mußt du es mit dem Index ansprechen um den entsprechenden Inhalt auszugeben.

Wenn ich es richtig interpretiere wäre der Index bei dir 3
01.
echo $r(3);
MfG Sam
Bitte warten ..
Mitglied: Arano
30.10.2009 um 15:41 Uhr
Nein nein nein...

..das sollte man doch auf den ersten Blick schon erkennen können !

Der Ansatz mit dem Index ist wohl richtig, aber "3" ist dieser nicht, 3 ist die länge der Zeichenkette (String) des Wertes.
"string(3) "345"" Der String "345" ist 3 Zeichen lang.
Man siehe ins PHP-Manual - var_dump()

Der Index hier lautet: "DATEDIFF('2010-10-10','2009-10-30')", so wie er auch in den eckigen Klammern der var_dump() Ausgabe steht. Weil dies aber nicht gerade leserlich ist solltest du deinen Query etwas modifizieren, etwa so:
01.
SELECT 
02.
    DATEDIFF('$termine','$dat') AS `differenz`
Danach wird die Ausgabe von var_dump() etwa so aussehen:
01.
array(1) { 
02.
    ["differenz"]=>  string(3) "345" 
03.
}  

Schönes Wochenende
~Arano
Bitte warten ..
Mitglied: SuatAl
03.11.2009 um 07:46 Uhr
Danke für die Tips!!!1

Ich hatte es auch mit dem Index versucht- leider ohne Erfolg

Danke Arano- dein Ansatz hat mich zum Erfolg geführt!!!!

Grüße,
Suat
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Apache Server
gelöst Fehler beim Import einer DB vom anderen MySQL-Server (2)

Frage von zeroblue2005 zum Thema Apache Server ...

Datenbanken
Tool oder Dienst für E-Mail (POP3) zu MySQL Datenbank (3)

Frage von bounee zum Thema Datenbanken ...

Datenbanken
Unvollständiger mysql dump (7)

Frage von AS-N00 zum Thema Datenbanken ...

Batch & Shell
gelöst FOR Schleife mit Unterverzeichnissen, die Ausgabe kürzen (tokens evtl.) (5)

Frage von Kriegstreiber zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Hardware
Laptop ins Salzwasser gefallen (18)

Frage von Marcel94 zum Thema Hardware ...

Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (13)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (13)

Frage von thomasreischer zum Thema Hardware ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...