Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Checkbox problem

Einklappen

Neue Werbung 2019

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

  • #16
    was mich persönlich grade am meisten ärgert das ich an so ner "kleinigkeit" scheiter, ich krieg nen telnetport geöffnet um mir über ne serielle schnittstelle daten zu holen, bekomm den string den ich bekomme aufgeteilt auf die werte die ich brauche usw. alles kein problem und jetzt scheiterts an nem einfachen if, ich komm mir grade richtig doof vor ^^

    Kommentar


    • #17
      PHP-Code:
      <input type ="checkbox" name="condprod" if($condprod === 1) {echo checked="checked" >;} else { >} 
      Das ist ein ungültiger Mix von HTML und PHP.

      Um vom HTML Modus in den PHP Modus zu wechseln, braucht es ZWINGEND das PHP-Tag (oder eines von mehreren möglichen): <?php bzw. die Kurzform <? falls aktiviert.
      Zurück in den HTML Modus dann mit dem schliessenden Tag: ?>

      Alles zusammen:
      PHP-Code:
      <input type ="checkbox" name="condprod" <?php if($condprod === 1) {echo checked="checked" ;} ?>

      /* oder, noch deutlicher: */
      <input type ="checkbox" name="condprod"
      <?php if($condprod === 1) {echo checked="checked" ;} ?>
      >
      Bei letzterem Beispiel sieht man deutlicher, wo PHP beginnt/aufhört und welche spitze Klammer wozu gehört (zum PHP Tag oder zum HTML)


      was mich persönlich grade am meisten ärgert das ich an so ner "kleinigkeit" scheiter
      Grundlagen... wenn man sie einmal drin hat, ist es tatsächlich eine Kleinigkeit, aber sitzen sie nicht, wird jedes Trivialproblem nahezu unlösbar.
      Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

      Kommentar


      • #18
        hm ich habe keine ahnung warurm das nicht funktioniert .... deshalb jetzt einfach mal mein kompletter code denn dann muss da noch irgenntwo anders was im argen liegen
        PHP-Code:
        <?php 
        $IP
        =ofen123
        $con
        =fsockopen("$IP"port$errno$errstr);
        if(
        $con){
        fputs($con"\$01I\r");
        $buff=stream_get_contents($con1310); 
        }else {
        echo 
        $errstr "( " $errstr ")";
        }
        c
        fclose
        ($con);
        $tartemp=(real)substr($buff06);
        $curtemp=(real)substr($buff76);
        $tarhum=(real)substr($buff146);
        $curhum=(real)substr($buff216);
        $tarfan=(real)substr($buff286);
        $curfan=(real)substr($buff356);
        $power=(int)substr($buff99,1);
        $humcon=(int)substr($buff1001);
        $condprot=(int)substr($buff1011);
        echo <<<BODY
        <head>
        <title> remote control </title>
        </head>
        <body>
        <form method="POST" action="test.php">
        <table>
        <tr>
        <td>IP</td>
        <td><input name="IP" size=6 value=
        $IP></td>
        </tr>
        <tr>
        <td></td>
        <td>Target</td>
        <td>Currend</td>
        </tr>
        <tr>
        <td>temp</td>
        <td><input name="tartemp" size=6 value=
        $tartemp></td>
        <td>
        $curtemp</td>
        </tr>
        <tr>c
        <td> hum </td>
        <td><input name="tarhum" size=6 value=
        $tarhum></td>
        <td>
        $curhum</td>
        </tr>
        <td> Fan </td>
        <td><input name="tarfan" size 6 value=
        $tarfan>%</td>
        <td>
        $curfan %</td>
        </tr>
        <tr>
        <td>Power</td>
        <td><input type="checkbox" name="power">//hier lasse ich nun absichltich frei denn hier sollte die if abfrage kommen</td>
        </tr>
        <tr>
        <td>Hum Con</td>
        <td><input type="checkbox name="humcon""></td>
        </tr>
        <tr>
        <td>Condprot</td>
        <td>input type="checkbox name="condprot"></td>
        </tr>
        </table>
        </form>
        </bod>
        BODY;
        ?>
        mache ich es nicht mit echo <<< BODY sondern abgrenze wird mir das formular nichtmal mehr angezeigt
        minimale tippfehler bitte ich zu entschuldigen da ich den code per terminal auf einem RaspberryPi schreibe und nicht kopieren kann (code nochmal neu abgeschrieben)

        Kommentar


        • #19
          habs hinbekommen

          PHP-Code:
          if($condprot===1){$condcheck="checked=\"checked\"";}
          else{
          $condcheck;} 
          im formular siehts dann so aus
          Code:
          <input type="checkbox" name="condprot" $condcheck>
          nun wird via variable das checked eingesetzt oder halt nicht je nachdem wie die bedingung oben im php-teil ausfällt

          das das so wie ich es versucht habe nicht funktionierte war klar ... jetzt nach langem überlegen ^^
          da ich den kompletten HTML-teil via echo ausgebe kann ich ja keinen zusätzlichen code ins echo reinschreiben ohne das echo zu unterbrechen ... durch das echo <<<BODY ganz zu anfang ist diese unterbrechung ja garnicht möglich ^^

          trozdem tausend dank für die denkanstöße

          Kommentar


          • #20
            Nachtrag

            PHP-Code:
            else{$condcheck;} 
            Das ist Unsinn, einfach nur einen Variablennamen hinzuschreiben macht genau nix. Nennt man auch "empty statement", eine Programmzeile, die nichts bewirkt.

            Belege die Variable mit einem Leerstring, oder lass den else Teil komplett weg (dann initialisiere die Variable aber mit einem Leerstring).
            Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

            Kommentar


            • #21
              Das sind so Momente wo ich daran denke, dass ich auch mal Anfänger war. Nur zu einer Zeit, wo es noch kein Internet gab. Ist einfach nur die Schwelle gesunken, bei der man andere mit einem Forenbeitrag beschäftigt? Zum Thema:

              PHP-Code:
              <?php
              $isChecked 
              true;
              ?>

              <input type="checkbox"<?php if($isChecked): ?>checked="checked" <?php endif ?> />
              Wer in diesem Stadium ist, sollte sich ein Buch für Anfänger holen. Wer nicht lesen kann/mag, der muss sich ein anderes Hobby suchen.

              Kommentar


              • #22
                Das eigentliche Problem ist doch, dass Gabbanerd nicht von seiner komischen heredoc-Syntax abrückt.

                Ist einfach nur die Schwelle gesunken, bei der man andere mit einem Forenbeitrag beschäftigt?
                This. Plus, die Anspruchsdenke ist entstanden, dass die Lösung eh "da draußen" schon steht und nur zusammenkopiert werden muss*). Ein Forenbesuch dient heute nicht mehr der Lösung einer Frage sondern nur noch dazu, den Suchauftrag abzusetzen, für Dinge, die man selbst nicht recherchiert bekommt (und die doch da draußen schon sein müssen). So gesehen ist das die Umkehrung von "Wissen ist Wissen wo's steht".

                *) Erschreckenderweise gilt das auch mehr und mehr für Arbeit-/Auftraggeber. Dass Entwicklung einfach Zeit erfordert, ist heute im Zeitalter der "Ich klick mir mal ne App" offenbar aus den Hirnen verdrängt worden.
                [COLOR="#F5F5FF"]--[/COLOR]
                [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                [COLOR="#F5F5FF"]
                --[/COLOR]

                Kommentar

                Lädt...
                X