Variable in switch-Anweisung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Ja gerne, im Grunde wie #3.
    Zuletzt geändert von Hauser; 08.04.2010, 14:51.

    Kommentar


    • #17
      Du solltest dir einen vernünftigen Code-Style angewöhnen, wenn ich keine Auto-Indent-Funktion hätte, würde ich da nicht durchsehen!

      Dein Dilemma:

      du hast zwei While-Schleifen, die das Ergebnis derselben MySQL-Abfrage durchrattern. Das ist erstmal schon Blödsinn. In der ersten erzeugst du diese Links, die aber nie benutzt und jedesmal wieder überschrieben werden.

      In der zweiten Schleife, willst du diese Links benutzen, da sind sie aber nicht mehr da, weil sie nur in der ersten existierten, bzw. ist dann nur noch der letzte da.

      Die Lösung:
      nimm die Switch-Anweisung mit in die zweite Schleife rein und entferne dann die erste Schleife komplett.

      Ich vermute, dass du das Problem immer noch nicht verstehst, aber ich weiß nicht, wo ich anfangen soll, dir zu erklären, dass das Verhalten absolut logisch ist und dein Code sich dieser Logik entgegenstellt.

      Gruß,

      Amica
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Kommentar


      • #18
        Hallo Amica,

        ich gebe zu, ich habe mich total verrant.

        Ich habe immer nur den Fehler in der switch Anweisung gesucht und dabei
        übersehen, dass der ganze Aufbau völliger Blödsinn ist. Du hast absolut Recht.
        Ich muss mir unbedingt ein besseres Arbeiten angewöhnen. Das ganze Skript
        sieht aus, wie bei Hempels unterm Sofa !!!!

        Ich stelle mich der Kretik und gelobe auch hier Besserung.

        Auto-Indent-Funktion
        Will ich auch haben. Mit welchem Editor schreibst du. Ich nutze DW aber
        eigentlich nur zum Layout. (CSS-Html)

        Für PHP nutze ich Eclipse for PHP Developers, kann der das auch.

        Habe schon etwas gesucht aber noch nix gefunden.

        Das Skript jedenfalls läuft jetzt einwandfrei und glaube mir ich habe verstanden !!!

        Vielen lieben Dank.

        Gruß
        Hauser.
        P.S : Wenn ich auch so ne Auto-Ident Funktion finde, schreibe ich den
        Code auch noch mal hier rein

        Kommentar


        • #19
          Ich habe Notepad++ mit dem TextFX-Plugin. Da gibt es die Funktion "Reindent C++ Code". Da PHP zu den C-basierten Sprachen gehört, funktioniert das prima.
          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
          Super, danke!
          [/COLOR]

          Kommentar


          • #20
            Super danke für den Tipp !

            Ein tolles Programm.

            Hier nochmal das Skript:

            PHP-Code:
            error_reporting(E_ALL); #zeig alle Fehler 
            ini_set('display_errors''1'); 
            require_once 
            'inc/login.inc.php';
            $verbindung = @mysqli_connect($server$benutzer$passwort);
            if (
            $verbindung){
             
            mysqli_select_db($verbindung$datenbank);
             
             if(
            mysqli_error($verbindung)){
              echo 
            'Fehler: ' mysqli_error($verbindung);
             
             } else {
             
              
            $sql "SELECT * from event order by datum DESC";
              
            $result mysqli_query($verbindung$sql);
             
              while(
            $event mysqli_fetch_assoc($result)) { 
             
               
            $or $event['ort'];
               
            $htmlCode '<img src="event/img_get.php?id=' $event['ID'] . '" width="50" height="50" alt="" />';
             
               switch (
            $or) {
             
               case 
            'al-Dente':
                
            $link 'al-dente-highlights.php';
                break;
               case 
            'Medleys':
                
            $link 'medleys-events.php';
                break;
               case 
            'Club-Lounge':
                
            $link 'club-lounge-events.php';
                break;
               case 
            'Sport-Center':
                
            $link 'sport-center-events.php';
                break;
             
               default:
                
            $link 'index.php';
             
               }
             
               echo 
            "<table border='0', width='140px'>";
             
               echo 
            nl2br ("<td><hr style border='1px dotted #FC6053 width: 15px'><b>" $event['datum'] . "\n</b> 
            <b>Ort: <a href='
            $link'><font color='#98c9ec'>" $event['ort'] . "\n</b>
            <b>" 
            $event['name'] . "\n</b></a><br><a href='$link'>$htmlCode\n</a>
            <br> </td></tr>"
            );
             
               echo 
            "</table>";
             
             
              }
             }
            }
            mysqli_close($verbindung);
            ?> 
            Also nochmals vielen Dank für alles.

            Gruß
            Hauser

            Kommentar

            Lädt...
            X