Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Link Ausgabe PHP

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Link Ausgabe PHP

    Hallo Leute

    hab da ein winziges problem mit einem Link

    Code:
    PHP-Code:
               echo "<td class='messages_padd'><strong>"."<a href =\"message.php?messageId=$message->messageID\"><?= $message->SUBJECT ?></a></strong></td>";
    Leider wird mir die Subject der Message nicht ausgegeben!

    Bitte um Hilfe!

  • #2
    Dann stell mal error_reporting um und display_errors an. Dann solltest du sehen ob irgend nen Fehler kommt ...

    Ansonsten lass dir $message mal per var_dump() ausgeben, dann siehst du was wirklich dadrin steckt.

    Kommentar


    • #3
      var_Dump zeigt an das es messageID gibt
      und wegen error_reporting: " ich bekomm keinen Betreff ausgegeben, das heisst die Ausgabe von <?= $message->SUBJECT ?> ist falsch, wenn ich dies aber so ausgebe
      PHP-Code:
      <td class="messages_padd"><?= $message->SENDER ?></td>
      dann funktionierts ja, nur brauch ich eben den Link

      Kommentar


      • #4
        Du bist doch schon in einem PHP Block... Also wozu mit <? nochmal einen einleiten?

        Kommentar


        • #5
          PHP-Code:
          echo "<td class='messages_padd'>
                 <strong><a href ='message.php?messageId=" 
          $message->messageID"'>" $message->SUBJECT "</a></strong>
                </td>"

          Kommentar


          • #6
            Zitat von Sp1n Beitrag anzeigen
            Hallo Leute

            hab da ein winziges problem mit einem Link

            Code:
            PHP-Code:
                       echo "<td class='messages_padd'><strong>"."<a href =\"message.php?messageId=$message->messageID\"><?= $message->SUBJECT ?></a></strong></td>";
            Leider wird mir die Subject der Message nicht ausgegeben!

            Bitte um Hilfe!
            Es wird ausgegeben, du siehst es nur nicht.

            <?= $message->SUBJECT ?> ist eine vollständige Ausgabe in Kurzschreibweiße. Du hatsd as abe rin einem "echo" stehen also wird das komplett so ausgegeben. Im resultierendem HTML Quelltext steht dann sowas <?= YOURMSGSUBJECT ?>. Druch die < erwartet der Browser ein HTML-Tag und verarbeitet alles folgende entsprechend weswegen du den Text nicht siehst.

            Gewöhn dir bitte ordentliche String-Verkettung an. Das was du da oben fabrizierst ist grausam und genau dadurch entstehen solche banalen Fehler.

            PHP-Code:
            echo '<td class="messages_padd"><strong><a href="message.php?messageId='.$message->messageID.'">....</a></strong></td>'
            Viel übersichtlicher. HTML Attribute sind korrekt in ", du brauchst sie nicht escapen etc.
            "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

            Kommentar


            • #7
              Zitat von bandit600 Beitrag anzeigen
              PHP-Code:
              echo "<td class='messages_padd'>
                     <strong><a href ='message.php?messageId=" 
              $message->messageID"'>" $message->SUBJECT "</a></strong>
                    </td>"

              Perfektomio

              Dankeschön!

              Kommentar


              • #8
                in einem String brauchst/kannst du PHP-Variablen nicht mit <?=$variable ?> ausgeben.

                Für Strings, in denen, wie in deinem Fall, beide Hochkomma-typen enthalten sind, würde ich onehin grundsätzlich die Heredoc-Syntax empfehlen - das erspart dir das Escapen der jeweiligen Hochkommata.

                Edit: *seufz* viel zu langsam

                Kommentar


                • #9
                  Zitat von Sp1n Beitrag anzeigen
                  Perfektomio
                  ... wenn man davon absieht das HTML-Attribute in double-quotes gehören.

                  Zumindest mein ich das hier mal gelesen zu haben... ^^
                  "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

                  Kommentar


                  • #10
                    Eben.
                    Richtig wäre z.B.
                    PHP-Code:
                    echo '
                    <td class="messages_padd">
                      <strong><a href ="message.php?messageId=' 
                    $message->messageID '>"'
                        
                    $message->SUBJECT '</a></strong>
                      </td>'

                    [PHP]if ($var != 0) {
                    $var = 0;
                    }[/PHP]

                    Kommentar


                    • #11
                      Zitat von Dark Guardian Beitrag anzeigen
                      ... wenn man davon absieht das HTML-Attribute in double-quotes gehören.

                      Zumindest mein ich das hier mal gelesen zu haben... ^^
                      Auf mich wirkt das auch immer befremdlich aber laut W3C sind tatsächlich beide Varianten erlaubt.
                      [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
                      [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

                      Kommentar


                      • #12
                        Zitat von Wolla Beitrag anzeigen
                        Eben.
                        Richtig wäre z.B.
                        PHP-Code:
                        echo '
                        <td class="messages_padd">
                          <strong><a href ="message.php?messageId=' 
                        $message->messageID '>"'
                            
                        $message->SUBJECT '</a></strong>
                          </td>'

                        wie das früher so hieß "verdammt nah an der CD" - aber nicht ganz ....


                        PHP-Code:
                        echo '
                        <td class="messages_padd">
                          <strong><a href ="message.php?messageId=' 
                        $message->messageID '">'
                            
                        $message->SUBJECT '</a></strong>
                          </td>'

                        die "Gaudizacke" erst hinter dem Double-Quote (<a href= " xyz" > .</a>
                        "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

                        Kommentar


                        • #13
                          Zitat von fab Beitrag anzeigen
                          Auf mich wirkt das auch immer befremdlich aber laut W3C sind tatsächlich beide Varianten erlaubt.
                          Jap...hast recht:

                          http://www.w3.org/TR/html401/intro/sgmltut.html#h-3.2.2
                          "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

                          Kommentar

                          Lädt...
                          X