PHP Problem / Frage?

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von 1th_MACac, 05.03.2007.

  1. 1th_MACac

    1th_MACac Thread Starter MacUser Mitglied

    Beiträge:
    187
    Zustimmungen:
    8
    MacUser seit:
    29.02.2004
    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
     
  2. MacTuX

    MacTuX MacUser Mitglied

    Beiträge:
    347
    Zustimmungen:
    4
    MacUser seit:
    11.02.2002
    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
     
    Zuletzt bearbeitet: 05.03.2007
  3. miss.moxy

    miss.moxy MacUser Mitglied

    Beiträge:
    6.558
    Zustimmungen:
    624
    MacUser seit:
    15.05.2004
    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
     
  4. MacTuX

    MacTuX MacUser Mitglied

    Beiträge:
    347
    Zustimmungen:
    4
    MacUser seit:
    11.02.2002
    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";
     
  5. simusch

    simusch MacUser Mitglied

    Beiträge:
    2.221
    Zustimmungen:
    186
    MacUser seit:
    27.09.2004
    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>
     
  6. 1th_MACac

    1th_MACac Thread Starter MacUser Mitglied

    Beiträge:
    187
    Zustimmungen:
    8
    MacUser seit:
    29.02.2004
    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
     
  7. msslovi0

    msslovi0 MacUser Mitglied

    Beiträge:
    2.713
    Zustimmungen:
    115
    MacUser seit:
    20.03.2005
    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...
     
Die Seite wird geladen...

Diese Seite empfehlen