PHP Problem / Frage?

  1. 1th_MACac

    1th_MACac Thread StarterMacUser Mitglied

    Mitglied seit:
    29.02.2004
    Beiträge:
    191
    Zustimmungen:
    8
    Hallo Forum,

    bin gerade dabei folgendes zu basteln: je nach dem welche monat gerade ist soll mir das php script eine gewisse html datei einladen!

    bisher habe ich folgenden code und komme einfach nicht weiter! immer nur fehlermeldungen! was mache ich da falsch?? bzw. wo liegt der fehler??

    Code:
    <?php
    $monat = date('M');
    
    if($monat > january){
        $tabele="ab/jan.html";
    	
    if($monat > february){
        $tabele="ab/feb.html";
    	
    if($monat > march){
        $tabele="ab/mrz.html";
    	
    if($monat > april){
        $tabele="ab/apr.html";
    	
    if($monat > may){
        $tabele="ab/mai.html";
    	
    if($monat > june){
        $tabele="ab/jun.html";
    	
    if($monat > july){
        $tabele="ab/jul.html";
    	
    if($monat > august){
        $tabele="ab/aug.html";
    	
    if($monat > september){
        $tabele="ab/sep.html";
    	
    if($monat > october){
        $tabele="ab/okt.html";
    	
    if($monat > november){
        $tabele="ab/nov.html";
    	
    if($monat > december){
        $tabele="ab/dez.html";
     
      ?>
      
      
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    <title>abplan für<?php echo $monat; $year?></title>
    </head>
    <body>
    <html>
    <?php echo $table ?>
    </body>
    </html>
    Danke für eure hilfe

    1th_MACac
     
    1th_MACac, 05.03.2007
  2. MacTuX

    MacTuXMacUser Mitglied

    Mitglied seit:
    11.02.2002
    Beiträge:
    347
    Zustimmungen:
    4
    Code:
    if($monat == "january"){
        $tabele="ab/jan.html";
    
    1) die monatsnamen brauchen ein "
    2) muss der Name gleich sein
    3) gibt date('M') den verkürzten Namen aus. sprich z.B. aktuell "Mar"

    am besten ist es einfach so zu machen:

    Code:
    $monat = date("m");
    
    if($monat == "01"){
        $tabele="ab/jan.html";
    
    // usw...
    

    Grüße Markus
     
    MacTuX, 05.03.2007
  3. miss.moxy

    miss.moxyMacUser Mitglied

    Mitglied seit:
    15.05.2004
    Beiträge:
    6.539
    Zustimmungen:
    624
    Nicht nur die "".
    date("M") gibt Monatsname in drei Buchstaben aus also zB Mar (vgl. php.net).
    Außerdem stimmt die if-Abfrage nicht, mach einen Vergleich,
    also zB
    PHP:
    if($monat == "Mar") { $table="ab/mrz.html"; }
    lea :)

    EDIT: Markus, vorher stand da weniger :D
     
    miss.moxy, 05.03.2007
  4. MacTuX

    MacTuXMacUser Mitglied

    Mitglied seit:
    11.02.2002
    Beiträge:
    347
    Zustimmungen:
    4
    Ja, irgendwie hab ich nur den einen Fehler gesehen, schon gepostet und in meinem Beispiel fielen mir dann direkt die anderen Fehler auch noch auf... ;)

    Grüße Markus

    PS: Übrigens sind die Klammern auch noch falsch...:

    Entweder:
    Code:
    if($monat == "march")
    {
        $tabele="ab/mrz.html";
    }
    oder

    Code:
    if($monat == "march")
        $tabele="ab/mrz.html";
     
    MacTuX, 05.03.2007
  5. simusch

    simuschMacUser Mitglied

    Mitglied seit:
    27.09.2004
    Beiträge:
    2.239
    Zustimmungen:
    188
    also das geht ja deutlich einfacher:

    PHP:
    <?php
    $monat 
    date('n');
    switch(
    $monat)
    {
    case 
    1$table="ab/jan.html"; break;
    case 
    2$table="ab/feb.html"; break;
    case 
    3$table="ab/mrz.html"; break;
    case 
    4$table="ab/apr.html"; break;
    case 
    5$table="ab/mai.html"; break;
    case 
    6$table="ab/jun.html"; break;
    case 
    7$table="ab/jul.html"; break;
    case 
    8$table="ab/aug.html"; break;
    case 
    9$table="ab/sep.html"; break;
    case 
    10$table="ab/okt.html"; break;
    case 
    11$table="ab/nov.html"; break;
    case 
    12$table="ab/dez.html"; break;
    }
    ?>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    <title>abplan für <?php echo date("m.Y"); ?></title>
    </head>
    <body>
    <html>
    <?php echo $table?>
    </body>
    </html>
     
    simusch, 05.03.2007
  6. 1th_MACac

    1th_MACac Thread StarterMacUser Mitglied

    Mitglied seit:
    29.02.2004
    Beiträge:
    191
    Zustimmungen:
    8
    Danke

    Hallo ihr lieben Macuser,

    danke für eure schnelle Hilfe,

    das mit der " hätte mir ja auch mal auffallen können! ich dollo

    funktioniert jetzt wunderbar!

    Euch Dreien nochmals vielen vielen Dank

    G

    1th_MACac
     
    1th_MACac, 05.03.2007
  7. msslovi0

    msslovi0MacUser Mitglied

    Mitglied seit:
    20.03.2005
    Beiträge:
    2.714
    Zustimmungen:
    115
    Nicht wirklich. Die schließenden geschweiften Klammern fehlen auch. True wird es auch nie. Denn "Jan" ist nie größer "january".

    Und der Sinn der Übung erschließt sich mir auch nicht. Das läßt sich wesentlich einfacher lösen.

    [edit]viel zu langsam...
     
    msslovi0, 05.03.2007
Die Seite wird geladen...
Ähnliche Themen - PHP Problem Frage
  1. simusch
    Antworten:
    2
    Aufrufe:
    187
    simusch
    04.05.2017
  2. flohaase
    Antworten:
    2
    Aufrufe:
    967
    flohaase
    26.09.2013
  3. pfannkuchen2001
    Antworten:
    4
    Aufrufe:
    857
  4. silentx
    Antworten:
    4
    Aufrufe:
    645
    silentx
    27.07.2012
  5. netternachbar
    Antworten:
    3
    Aufrufe:
    922
    netternachbar
    24.01.2011