Ergebnis 1 bis 9 von 9

Thema: Anfängerproblem

  1. #1
    HTML Newbie
    Registriert seit
    20.06.2010
    Beiträge
    2
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Frage Anfängerproblem

    Hallo Community,

    ich sitze jetzt schon 2 Stunden an diesem Problem und komme nich weiter -_-

    Vll ist einer von euch so nett und hilft mir mein Problem zu lösen...

    Ich weiss nicht ob dass hier erlaubt ist einfach den code reinzuposten..
    falls es ein Vergehen ist bitte ich um Sorry

    Es ist ein php dokument und 2 css .. im php dokument ist eine selectbox wo man zwischen den 2 css dateien wechseln kann...

    <?php
    $link = $_GET["style"];
    if ($link == Yellow)

    {
    echo "<link rel='stylesheet' type='text/css' href='red.css'>";
    }
    else
    {
    echo "<link rel='stylesheet' type='text/css' href='yellow.css'>";
    }

    echo"
    <html>
    <head>";

    echo "
    <title>Beispiel Dunic</title>";

    echo "
    <script type='text/javascript'>
    <!--
    function send()
    {
    document.formular.submit();
    }
    //-->
    </script>

    </head>";
    echo "<body>";


    echo "
    <div align='center'>
    <h1>Sammelbeispiel</h1>
    </div>
    ";


    echo "
    <div id='main_menu'>
    <form name='formular' method='get' action='$PHP_SELF'>
    <p>
    <br>
    Choose your style:
    <br>
    <select name='style' size='1' >
    <option name='style2'>YELLOW</option>
    <option name='style3'>RED</option>

    </select>
    <br>

    <input type='button' value='GO!' name='submity' onclick='send()'>
    <br/>
    </p>
    </form>
    </div>";


    echo "<div class='inhalt'>";
    echo "<p><img src='1.jpg' width='200' height='200'></p>";
    echo "
    ausgewaehltes style:<br><b>
    ";

    if ($_GET["style"] != "")
    echo $_GET["style"];


    echo "</b></p>";
    echo "</div>";

    echo "</body>";
    echo "</html>";

    ?>
    css1:
    body
    {
    background-color: red;
    }

    #main_menu
    {
    background-color: red;
    float: left; width: 10em; height: 22em;
    margin: 0; padding: 0;
    border: 1px dashed silver;
    text-align: center;
    }

    .inhalt {
    margin-left: 10em;
    padding: 0 1em;
    border: 1px solid silver;
    }

    p
    {
    font-family: "Arial";
    font-size: 20px;
    }
    css2
    body
    {
    background-color: yellow;
    }

    #main_menu
    {
    background-color: yellow;
    float: left; width: 10em; height: 22em;
    margin: 0; padding: 0;
    dashed silver;
    text-align: center;
    position: static;
    }

    .inhalt {
    margin-left: 10em;
    padding: 23 ;
    border: 55px solid black;
    }

    p
    {
    font-family: "Arial";
    font-size: 40px;
    }
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Geändert von akiii (20.06.2010 um 23:49 Uhr)

  2. #2
    König(in)
    Registriert seit
    07.02.2009
    Ort
    Leipzig
    Beiträge
    1.391
    Danke
    2
    Bekam 21 mal "Danke" in 20 Postings

    Standard AW: Anfängerproblem

    Da du es nicht geschrieben hast was das Problem ist, lass mich raten: der Style-Wechsel funktioniert nicht und es wird immer yellow.css genutzt oder ein php-Fehler erzeugt.

    Der Grund:
    Du vergleichst falsch in PHP:
    Code:
    if ($link == Yellow)
    Da Du einen Stringvergleich machst musst Du den Wert mit Anführungszeichen umgeben
    Code:
    if ($link == "Yellow")
    oder (besser noch) gleich einen Stringvergleich korrekt implementieren:
    Code:
    if (strcmp($link,"Yellow") == 0)

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    20.06.2010
    Beiträge
    2
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Anfängerproblem

    Hallo,

    if ($link == "Yellow")

    hab das jetzt so gemacht und es geht noch immer nicht.. es bleibt einfach beim yellow style und will nicht auf red switchen :&

  4. #4
    Forum Guru Avatar von driver
    Registriert seit
    10.04.2006
    Alter
    34
    Beiträge
    20.729
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Anfängerproblem

    mach des echo mal im head, und nicht vorm html-tag
    >> die icq-schreiberlinge bitte dies hier beachten



    1679 entdeckte Gottfried Wilhelm Leibniz das Binärsystem, bei einem Gespräch mit seiner Mutter: "Ja..., Nein..., Nein..., Nein..., Ja..., Ja..., Nein..."

  5. #5
    Bandit
    Gast

    Standard AW: Anfängerproblem

    Anmerkungen:
    Nur weil man kilometerlangen HTML-Code per echo ausgibt, wird dieser nicht schöner
    An den Anfang des Scriptes diese Zeilen einbauen:
    PHP-Code:
    error_reporting(E_ALL);
    ini_set("display_errors"true); 
    $PHP_SELF ist veraltet

    Dieser Thread gehört eigentlich in den PHP-Bereich

  6. #6
    Pion
    Gast

    Standard AW: Anfängerproblem

    Zitat Zitat von bandit600 Beitrag anzeigen
    $PHP_SELF ist veraltet
    Anmerkung2 :

    Zudem unsicher also hier ganz auf PHP_SELF verzichten bzw sichern


    mfg

  7. #7
    Meister(in) Avatar von Afrael
    Registriert seit
    26.04.2009
    Ort
    NRW
    Alter
    26
    Beiträge
    313
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Anfängerproblem

    if ($_GET["style"] != "")
    echo $_GET["style"];
    Selbstverständlich hast du vorher sichergestellt, dass $_GET['style'] nur das ist, was man auswählen kann, und garantiert keinen HTML-Code enthält, oder?
    Information will frei verfügbar sein.

    Don't eat unpeeled hedgehogs.

  8. #8
    Jedi Ritter Avatar von Dodo
    Registriert seit
    26.04.2008
    Ort
    Wien
    Alter
    27
    Beiträge
    3.774
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Anfängerproblem

    Zitat Zitat von Afrael Beitrag anzeigen
    Selbstverständlich hast du vorher sichergestellt, dass $_GET['style'] nur das ist, was man auswählen kann, und garantiert keinen HTML-Code enthält, oder?
    Das Ganze wurde von einem Afänger - wie der Thread schon sagt - geschrieben.
    Außerdem denke ich, dass solche Sicherheitsüberprüfungen in diesem Code nicht notwendig sind...

    Ich denke diese Hilfe wird ihn - als Anfänger - nur verwirren...
    Something big is coming. And there will be pirates and ninjas and unicorns...

  9. #9
    König(in) Avatar von crAzywuLf
    Registriert seit
    03.02.2009
    Beiträge
    1.175
    Danke
    1
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Anfängerproblem

    Hi akii,
    wie schon gesagt wurde scheint das Problem an den Anführungszeichen oder der Implementierung überhalb des <html> Tags zu liegen. Ich habe dir deine Version mal ein wenig verändert, da es auch nicht nötig ist, dass du die ganze Datei in PHP ausgibst
    PHP-Code:
    <html>
    <head>
    <title>Beispiel Dunic</title>
    <script type="text/javascript">
    <!--
    function send()
    {
        document.formular.submit();
    }
    //-->
    </script>
    <?php
    $link 
    $_GET["style"];
    if (
    $link == "Yellow")
    {
        echo 
    '<link rel="stylesheet" type="text/css" href="red.css">';
    }
    else
    {
        echo 
    '<link rel="stylesheet" type="text/css" href="yellow.css">';
    }
    ?>
    </head>
    <body>

    <div align="center">
        <h1>Sammelbeispiel</h1>
    </div>

    <div id="main_menu">
        <form name="formular" method="get" action="<?php echo $_SERVER["PHP_SELF"]; // nicht sinnvoll, schreib hier lieber den Dateinamen hin ?>">
        <p>
            <br>
            Choose your style:
            <br>
            <select name="style" size="1" >
                <option name="style2">YELLOW</option>
                <option name="style3">RED</option>
            </select>
            <br>
            <input type="button" value="GO!" name="submity" onclick="send()">
            <br/>
        </p>
        </form>
    </div>


    <div class="inhalt">
        <p><img src="1.jpg" width="200" height="200"></p>

        ausgewaehltes style:<br>
        <b>
    <?php
    if ($_GET["style"] != "") echo $_GET["style"]; // Sicherheitslücke, hier kann der Benutzer mit HTML oder javascript die Seite manipulieren
    ?>
        </b>
    </div>

    </body>
    </html>
    Mich wundert an dem Code nur, dass wenn man Yellow auswählt, eine red.css geladen wird? Ist das so richtig?
    Wie du siehst sind auch Einrückungen ganz sinnvoll
    Und wenn du echo's mit dem Hochkomma startest brauchst du innerhalb des Codes die Anführungszeichen nicht in Hochkommas zu verändern (oder escapen) und falls doch mal ein Hochkomma vorkommt dann escapst du es einfach so \'
    Geändert von crAzywuLf (22.06.2010 um 17:57 Uhr)
    Gruß crAzywuLf

Ähnliche Themen

  1. TI-89 Basic, Anfängerproblem
    Von anagramm im Forum Forum für alle anderen Programmiersprachen
    Antworten: 9
    Letzter Beitrag: 01.02.2009, 17:57
  2. Html AnfängerProblem
    Von Herr_Bertram im Forum HTML & CSS Forum
    Antworten: 33
    Letzter Beitrag: 06.01.2007, 22:23
  3. Antworten: 17
    Letzter Beitrag: 31.07.2006, 15:52
  4. PHP Anfängerproblem mit GD extension
    Von emonem im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 08.09.2005, 20:03

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •