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

Auswahlliste mit Tagesdatum vorbelegt, aber keine Auswahl früherer Monate möglich

Frage Entwicklung PHP

Mitglied: gechger

gechger (Level 1) - Jetzt verbinden

08.07.2009, aktualisiert 21:21 Uhr, 4000 Aufrufe, 5 Kommentare

Ich arbeite gerade an einem Script, welches einem User erlauben soll, Daten aus einer Datenbank mit auswählbarem von-bis Datumsbereich zu holen

Hallo Forum,

leider habe ich gerade einen Knoten im Kopf und komme nicht weiter.
In einem Script biete ich einem User an, über Pull-Down Auswahl Daten aus einer Datenbank zu holen.

Er soll den Datum-von Bereich eingeben, den Daten-bis Bereich und den User auswählen, der die Daten erfasst hat. Die PullDowns für das Datum sollen als Standard den aktuellen Tag anzeigen. Das Script sieht bisher so aus:

01.
 
02.
<? 
03.
$akttag=(date("d")); 
04.
$aktmonat=(date("m")); 
05.
$aktjahr=(date("y")); 
06.
 
07.
?> 
08.
 
09.
<form action="aendern.php" method="post"
10.
<tr> 
11.
<td> 
12.
 </td> 
13.
 </tr> 
14.
  <tr> 
15.
    <td> 
16.
    <select name="tagvon" size="1"
17.
    <option value="01" <?if ($akttag=='01'){?>selected<?}?>>01</option> 
18.
    <option value="02" <?if ($akttag=='02'){?>selected<?}?>>02</option> 
19.
    <option value="03" <?if ($akttag=='03'){?>selected<?}?>>03</option> 
20.
    <option value="04" <?if ($akttag=='04'){?>selected<?}?>>04</option> 
21.
    <option value="05" <?if ($akttag=='05'){?>selected<?}?>>05</option> 
22.
    <option value="06" <?if ($akttag=='06'){?>selected<?}?> >06</option> 
23.
    <option value="07" <?if ($akttag=='07'){?>selected<?}?>>07</option> 
24.
    <option value="08" <?if ($akttag=='08'){?>selected<?}?>>08</option> 
25.
    <option value="09" <?if ($akttag=='09'){?>selected<?}?>>09</option> 
26.
    <option value="10" <?if ($akttag=='10'){?>selected<?}?>>10</option> 
27.
    <option value="11" <?if ($akttag=='11'){?>selected<?}?>>11</option> 
28.
    <option value="12" <?if ($akttag=='12'){?>selected<?}?>>12</option> 
29.
    <option value="13" <?if ($akttag=='13'){?>selected<?}?>>13</option> 
30.
    <option value="14" <?if ($akttag=='14'){?>selected<?}?>>14</option> 
31.
    <option value="15" <?if ($akttag=='15'){?>selected<?}?>>15</option> 
32.
    <option value="16" <?if ($akttag=='16'){?>selected<?}?>>16</option> 
33.
    <option value="17" <?if ($akttag=='17'){?>selected<?}?>>17</option> 
34.
    <option value="18" <?if ($akttag=='18'){?>selected<?}?>>18</option> 
35.
    <option value="19" <?if ($akttag=='19'){?>selected<?}?>>19</option> 
36.
    <option value="20" <?if ($akttag=='20'){?>selected<?}?>>20</option> 
37.
    <option value="21" <?if ($akttag=='21'){?>selected<?}?>>21</option> 
38.
    <option value="22" <?if ($akttag=='22'){?>selected<?}?>>22</option> 
39.
    <option value="23" <?if ($akttag=='23'){?>selected<?}?>>23</option> 
40.
    <option value="24" <?if ($akttag=='24'){?>selected<?}?>>24</option> 
41.
    <option value="25" <?if ($akttag=='25'){?>selected<?}?>>25</option> 
42.
    <option value="26" <?if ($akttag=='26'){?>selected<?}?>>26</option> 
43.
    <option value="27" <?if ($akttag=='27'){?>selected<?}?>>27</option> 
44.
    <option value="28" <?if ($akttag=='28'){?>selected<?}?>>28</option> 
45.
    <option value="29" <?if ($akttag=='29'){?>selected<?}?>>29</option> 
46.
    <option value="30" <?if ($akttag=='30'){?>selected<?}?>>30</option> 
47.
    <option value="31" <?if ($akttag=='31'){?>selected<?}?>>31</option> 
48.
    </select> 
49.
    </td> 
50.
    <td> 
51.
    <select name="monatvon" size="1"
52.
    <option value="01" <?if ($aktmonat=='01') { ?>selected<?}?>>Januar</option> 
53.
    <option value="02" <?if ($aktmonat=='02') { ?>selected<?}?>>Februar</option> 
54.
    <option value="03" <?if ($aktmonat=='03') { ?>selected<?}?>>März</option> 
55.
    <option value="04" <?if ($aktmonat=='04') { ?>selected<?}?>>April</option> 
56.
    <option value="05" <?if ($aktmonat=='05') { ?>selected<?}?>>Mai</option> 
57.
    <option value="06" <?if ($aktmonat=='06') { ?>selected<?}?>>Juni</option> 
58.
    <option value="07" <?if ($aktmonat=='07') { ?>selected<?}?> >Juli</option> 
59.
    <option value="08" <?if ($aktmonat=='08') { ?>selected<?}?>>August</option> 
60.
    <option value="09" <?if ($aktmonat=='09') { ?>selected<?}?>>September</option> 
61.
    <option value="10" <?if ($aktmonat=='10') { ?>selected<?}?>>Oktober</option> 
62.
    <option value="11" <?if ($aktmonat=='11') { ?>selected<?}?>>November</option> 
63.
    <option value="12" <?if ($aktmonat=='12') { ?>selected<?}?>>Dezember</option> 
64.
    </select> 
65.
     </td> 
66.
     <td> 
67.
    <select name="jahrvon" size="1"
68.
    <option value="2009" <?if ($aktjahr=='09'){ ?>selected<?}?> >2009</option> 
69.
    <option value="2010" <?if ($aktjahr=='10'){ ?>selected<?}?>>2010</option> 
70.
    <option value="2011" <?if ($aktjahr=='11'){ ?>selected<?}?>>2011</option> 
71.
    <option value="2012" <?if ($aktjahr=='12'){ ?>selected<?}?>>2012</option> 
72.
    <option value="2013" <?if ($aktjahr=='13'){ ?>selected<?}?>>2013</option> 
73.
    <option value="2014" <?if ($aktjahr=='14'){ ?>selected<?}?>>2014</option> 
74.
    <option value="2015" <?if ($aktjahr=='15'){ ?>selected<?}?>>2015</option> 
75.
    <option value="2016" <?if ($aktjahr=='16'){ ?>selected<?}?>>2016</option> 
76.
    <option value="2017" <?if ($aktjahr=='17'){ ?>selected<?}?>>2017</option> 
77.
    <option value="2018" <?if ($aktjahr=='18'){ ?>selected<?}?>>2018</option> 
78.
    <option value="2019" <?if ($aktjahr=='19'){ ?>selected<?}?>>2019</option> 
79.
    <option value="2020" <?if ($aktjahr=='20'){ ?>selected<?}?>>2020</option> 
80.
    </select> 
81.
     </td> 
82.
     <td width="25"
83.
     </td> 
84.
     <td> 
85.
    <select name="tagbis" size="1"
86.
    <option value="01" <?if ($akttag=='01'){?>selected<?}?>>01</option> 
87.
    <option value="02" <?if ($akttag=='02'){?>selected<?}?>>02</option> 
88.
    <option value="03" <?if ($akttag=='03'){?>selected<?}?>>03</option> 
89.
    <option value="04" <?if ($akttag=='04'){?>selected<?}?>>04</option> 
90.
    <option value="05" <?if ($akttag=='05'){?>selected<?}?>>05</option> 
91.
    <option value="06" <?if ($akttag=='06'){?>selected<?}?> >06</option> 
92.
    <option value="07" <?if ($akttag=='07'){?>selected<?}?>>07</option> 
93.
    <option value="08" <?if ($akttag=='08'){?>selected<?}?>>08</option> 
94.
    <option value="09" <?if ($akttag=='09'){?>selected<?}?>>09</option> 
95.
    <option value="10" <?if ($akttag=='10'){?>selected<?}?>>10</option> 
96.
    <option value="11" <?if ($akttag=='11'){?>selected<?}?>>11</option> 
97.
    <option value="12" <?if ($akttag=='12'){?>selected<?}?>>12</option> 
98.
    <option value="13" <?if ($akttag=='13'){?>selected<?}?>>13</option> 
99.
    <option value="14" <?if ($akttag=='14'){?>selected<?}?>>14</option> 
100.
    <option value="15" <?if ($akttag=='15'){?>selected<?}?>>15</option> 
101.
    <option value="16" <?if ($akttag=='16'){?>selected<?}?>>16</option> 
102.
    <option value="17" <?if ($akttag=='17'){?>selected<?}?>>17</option> 
103.
    <option value="18" <?if ($akttag=='18'){?>selected<?}?>>18</option> 
104.
    <option value="19" <?if ($akttag=='19'){?>selected<?}?>>19</option> 
105.
    <option value="20" <?if ($akttag=='20'){?>selected<?}?>>20</option> 
106.
    <option value="21" <?if ($akttag=='21'){?>selected<?}?>>21</option> 
107.
    <option value="22" <?if ($akttag=='22'){?>selected<?}?>>22</option> 
108.
    <option value="23" <?if ($akttag=='23'){?>selected<?}?>>23</option> 
109.
    <option value="24" <?if ($akttag=='24'){?>selected<?}?>>24</option> 
110.
    <option value="25" <?if ($akttag=='25'){?>selected<?}?>>25</option> 
111.
    <option value="26" <?if ($akttag=='26'){?>selected<?}?>>26</option> 
112.
    <option value="27" <?if ($akttag=='27'){?>selected<?}?>>27</option> 
113.
    <option value="28" <?if ($akttag=='28'){?>selected<?}?>>28</option> 
114.
    <option value="29" <?if ($akttag=='29'){?>selected<?}?>>29</option> 
115.
    <option value="30" <?if ($akttag=='30'){?>selected<?}?>>30</option> 
116.
    <option value="31" <?if ($akttag=='31'){?>selected<?}?>>31</option> 
117.
    </select> 
118.
    </td> 
119.
    <td> 
120.
    <select name="monatbis" size="1"
121.
    <option value="01" <?if ($aktmonat=='01') { ?>selected<?}?>>Januar</option> 
122.
    <option value="02" <?if ($aktmonat=='02') { ?>selected<?}?>>Februar</option> 
123.
    <option value="03" <?if ($aktmonat=='03') { ?>selected<?}?>>März</option> 
124.
    <option value="04" <?if ($aktmonat=='04') { ?>selected<?}?>>April</option> 
125.
    <option value="05" <?if ($aktmonat=='05') { ?>selected<?}?>>Mai</option> 
126.
    <option value="06" <?if ($aktmonat=='06') { ?>selected<?}?>>Juni</option> 
127.
    <option value="07" <?if ($aktmonat=='07') { ?>selected<?}?> >Juli</option> 
128.
    <option value="08" <?if ($aktmonat=='08') { ?>selected<?}?>>August</option> 
129.
    <option value="09" <?if ($aktmonat=='09') { ?>selected<?}?>>September</option> 
130.
    <option value="10" <?if ($aktmonat=='10') { ?>selected<?}?>>Oktober</option> 
131.
    <option value="11" <?if ($aktmonat=='11') { ?>selected<?}?>>November</option> 
132.
    <option value="12" <?if ($aktmonat=='12') { ?>selected<?}?>>Dezember</option> 
133.
    </select> 
134.
     </td> 
135.
     <td> 
136.
    <select name="jahrbis" size="1"
137.
    <option value="2009" <?if ($aktjahr=='09'){ ?>selected<?}?> >2009</option> 
138.
    <option value="2010" <?if ($aktjahr=='10'){ ?>selected<?}?>>2010</option> 
139.
    <option value="2011" <?if ($aktjahr=='11'){ ?>selected<?}?>>2011</option> 
140.
    <option value="2012" <?if ($aktjahr=='12'){ ?>selected<?}?>>2012</option> 
141.
    <option value="2013" <?if ($aktjahr=='13'){ ?>selected<?}?>>2013</option> 
142.
    <option value="2014" <?if ($aktjahr=='14'){ ?>selected<?}?>>2014</option> 
143.
    <option value="2015" <?if ($aktjahr=='15'){ ?>selected<?}?>>2015</option> 
144.
    <option value="2016" <?if ($aktjahr=='16'){ ?>selected<?}?>>2016</option> 
145.
    <option value="2017" <?if ($aktjahr=='17'){ ?>selected<?}?>>2017</option> 
146.
    <option value="2018" <?if ($aktjahr=='18'){ ?>selected<?}?>>2018</option> 
147.
    <option value="2019" <?if ($aktjahr=='19'){ ?>selected<?}?>>2019</option> 
148.
    <option value="2020" <?if ($aktjahr=='20'){ ?>selected<?}?>>2020</option> 
149.
    </select> 
150.
     </td> 
151.
     <td width="25"
152.
     </td> 
153.
     <td> 
154.
 
155.
 
156.
<?php 
157.
error_reporting(E_ALL); #zeig alle Fehler 
158.
ini_set('display_errors', '1'); #sorgt dafür, dass überhaupt Fehler angezeigt werden 
159.
 
160.
//Verbindung zur Datenbank herstellen 
161.
 
162.
 
163.
  $cldb = mysql_connect($_SESSION['host'], $_SESSION['dbuser'], $_SESSION['passwort']) or die(mysql_error()); 
164.
  mysql_select_db($_SESSION['db']); 
165.
  $sql = "SELECT * FROM ".$_SESSION['tab']."  "
166.
  $result = mysql_query($sql) OR die(mysql_error()); 
167.
 
168.
 
169.
 
170.
  ?> 
171.
<select name="nachname" size="1"
172.
<?php 
173.
        while ($row = mysql_fetch_assoc($result)) { 
174.
        echo '<option value= "'. $row['name'] .'" > '. $row['name']. '</option>'."\n"
175.
 
176.
177.
?> 
178.
</select> 
179.
</td> 
180.
 
181.
</table> 
182.
<table> 
183.
        <tr> 
184.
         <td width="150" ><input type="submit" value="Daten anzeigen"></td> 
185.
         <td width="175"><input type="reset" value="Abbrechen"></td> 
186.
            </tr> 
187.
 
188.
</tr> 
189.
</table> 
190.
</form> 
191.
<table border="1"
192.
         <tr> 
193.
 
194.
         </tr> 
195.
</table> 
196.
 
197.
<? 
198.
@$datumvon=$_POST["tagvon"].".".$_POST["monatvon"].".".$_POST["jahrvon"]; 
199.
@$datumbis=$_POST["tagbis"].".".$_POST["monatbis"].".".$_POST["jahrbis"]; 
200.
@$namecheck=$_POST["nachname"]; 
201.
 
202.
$sql1 = "SELECT * FROM ".$_SESSION['tabdat']." INNER JOIN ".$_SESSION['tab']." ON ".$_SESSION['tabdat'].".userid = ".$_SESSION['tab'].".userid  where (datum >= '$datumvon') and (datum <= '$datumbis') and (name = '$namecheck') order by datum"
203.
//echo "$sql1","<br>"
204.
 
205.
$result1 = mysql_query($sql1) OR die(mysql_error()); 
206.
while ($row1 = mysql_fetch_assoc($result1)) { 
207.
         //echo "<pre>"
208.
         //print_r($row1); 
209.
         //echo "</pre>"
210.
         if (@$_POST["nachname"] == @$row1["name"]){ 
211.
?> 
212.
 
213.
<table border="1"
214.
         <tr> 
215.
                 <td width="120">Datum</td> 
216.
                 <td width="120">Userid</td> 
217.
                 <td width="180">Name</td> 
218.
         </tr> 
219.
         <tr> 
220.
                 <td width="120"  bgcolor="#FFFFFF"><? echo $row1["datum"]; ?></td> 
221.
                 <td width="120" bgcolor="#FFFFFF"><? echo $row1["userid"]; ?></td> 
222.
                 <td width="180" bgcolor="#FFFFFF"><? echo $row1["name"]; ?></td> 
223.
 
224.
         </tr> 
225.
         <tr> 
226.
                 <td width="250">Projekt</td> 
227.
                 <td width="250">Auftrag</td> 
228.
                 <td width="250">Einsatz</td> 
229.
                 <td width="100">Stunden</td> 
230.
         </tr> 
231.
         <tr> 
232.
                 <td width="250" bgcolor="#FFFFFF"><? echo $row1["projekt"]; ?></td> 
233.
                 <td width="250" bgcolor="#FFFFFF"><? echo $row1["auftrag"]; ?></td> 
234.
                 <td width="250" bgcolor="#FFFFFF"><? echo $row1["einsatz"]; ?></td> 
235.
                 <td width="100" align="center" bgcolor="#FFFFFF"><? echo $row1["zeit"]; ?></td> 
236.
         </tr> 
237.
         <tr height="25"><td height="25" ></td> 
238.
         </tr> 
239.
</table> 
240.
 
241.
 
242.
 
243.
 
244.
 
245.
<? 
246.
 
247.
248.
249.
 
250.
?>

Mein Problem ist jetzt, daß ich keine Daten vom Vormonat bekomme, sondern nur vom aktuellen Monat Juli. Ich vermute, daß die IF-Abfrage
<option value="07" <?if ($aktmonat=='07') { ?>selected<?}?> >Juli</option>
die Ausgabe des Monats 6 verhindert, weil der aktuelle Monat ja der Monat 7 ist.

Ich müßte also eine else Abfrage einbauen, aber habe gerade keine Idee wie die aussehen sollte.
Oder ich brauche vielleicht einen komplett anderen Ansatz, um meine Ziele zu erreichen:

Auswahl Datum von, Auswahl Datum bis, Auswahl User, Voreinstellung des Datums auf aktuellen Tag.

Jede Idee hilft weiter (wie immer )
Schöne Grüße
Christof
Mitglied: empreality
08.07.2009 um 22:11 Uhr
schon mal was von schleifen gehört?

echo "<select name=\"tagvon\">";
for ($tag=1; $tag <= 31; $tag++) {
echo "<option value=\"$tag\" ";
if ($akttag==$tag) echo "selected ";
echo ">$tag</option>";
}



Von welchem Typ ist die Datumsspalte in der DB-Tabelle ?
Bitte warten ..
Mitglied: gechger
08.07.2009 um 22:17 Uhr
wow,

an dieser Stelle eine Schleife einbauen, auf diese Idee bin ich echt noch nicht gekommen. Das sieht aber vielversprechend aus.

Vielen Dank für die prompte Hilfe

Schöne Grüße
Christof
Bitte warten ..
Mitglied: empreality
08.07.2009 um 22:23 Uhr
Die Monate kannst du dir mal in ein Array stecken:

$arrmonat = array("Januar", "Februar", "März", "April", "Mai", "Juni",
"Juli", "August", "September", "Oktober","November","Dezember");

Und dann in der Schleife mit $arrmonat[$monat] ausgeben.

Benutzt du DATE in der DB?
Bitte warten ..
Mitglied: gechger
09.07.2009 um 12:37 Uhr
Hallo,

ich verwende drei Datumsfelder.
Datum beinhaltet ein Datum, daß vom User eingegeben wird. Dieses Feld frage ich hier ab. (varchar)
erfdatum ist ein Timestamp, der automatisch beim Speichern des Datensatzes erzeugt wird. (timestamp)
Dann gibt es noch ein aenderdat, um zu dokumentieren, wann ein bestehender Datensatz geändert worden ist. (varchar)


Schöne Grüße
Christof
Bitte warten ..
Mitglied: gechger
10.07.2009 um 09:22 Uhr
Hallo,

Dein Script funktioniert im Prinzip einwandfrei. Ich habe jetzt nur noch ein Problem mit der Formatierung der Datumsfelder. Ich verwende (date("n")), um den Monat ohne führende Nullen zu erfassen. In der Datenbank steht trotzdem "07". Wenn wirklich "7" drin stände, könnte ich die Daten abfragen, so passiert aber nichts.

Wie kriege ich am sinnvolsten eine einheitliche Formatierung hin?

Schöne Grüße
Christof

EDIT: Habs gefunden. Ich habe über das Eingabeformular ja die Formatierung entsprechend mitgegeben.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Windows Netzwerk
Kein RDP über VPN per MS-TSC möglich (9)

Frage von survial555 zum Thema Windows Netzwerk ...

Server-Hardware
gelöst Hilfe bei einer Server (Hardware) auswahl (30)

Frage von bjk190368 zum Thema Server-Hardware ...

Microsoft
Keine Anmeldung mehr möglich (Server 2012 R2) (4)

Frage von Shnuuu zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...