AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

PHP HILFFFEEEE!!!!! :-)

Ein Thema von IOAH · begonnen am 16. Dez 2005 · letzter Beitrag vom 17. Dez 2005
Antwort Antwort
IOAH

Registriert seit: 6. Jul 2004
30 Beiträge
 
#1

PHP HILFFFEEEE!!!!! :-)

  Alt 16. Dez 2005, 10:33
Hallo Leute!

Ich bin gerade mal wieder am Verzweifeln
Hab folgende PHP-Klasse geschrieben:

Code:
class EinArtikel
  {
    var $datum;
    var $titel;
    var $untertitel;
    var $text;
    var $bildbeschreibung;
    var $bild;

    /*Konstruktor*/
    function EinArtikel($dat , $ti , $untertit , $te , $bildbe , $bil)
      {
        $this->$datum = $dat;
        $this->$titel = $ti;
        $this->$untertitel=$untertit;
        $this->$text =$te;
        $this->$bild = $bil;
        $this->$bildbeschreibung = $bildbe;

      }

    function create()
      {
        ?>
         <table border=0 width="500">
           <tr>
             <td colspan="3" background="pics/classpics/titel.jpg" align="center" valign="top" width="500" height="50">
               <?php
                 print "<h1>";
                 print $this->$titel;
                 print "</h1>";
                 if ($this->$untertitel)
                   {
                      print "<h2>";
                      echo $this->$untertitel;
                      print "</h2>";
                   }
                 else
                   {
                     print "Leck du mich am Arsch";
 
                   }
               ?>
             </td>
           </tr>
           <tr>
             <td align="left" background="pics/classpics/leftright.jpg" width="4" valign="top"></td>
             <td align="justify" width="492" valign="top"><?php print "
";print $this->$datum;print"

";print $this->$text; print "

";
               if ($this->$bildbeschreibung && $this->$bild)
                 {
                    print "<a href=\"index.php?mainframe=";
                    print $this->$bild;
                    print "\">";
                    print $this->$bildbeschreibung;
                    print "</a>";
                 }
             ?></td>
             <td align="right" background="pics/classpics/leftright.jpg" width="4" valign="top"></td>
           </tr>
           <tr>
             <td colspan="3" background="pics/classpics/unten.jpg" align="center" valign="top" width="500" height="6"></td>
           </tr>
         </table>
        <?php
      }
  }
Irgendwie haben plötzlich alle Variablen den gleichen Inhalt wie $bildbeschreibung... Ich hab mittlerweile festgestellt, dass es damit zusammenhängt, dass sie im Konstruktor an letzter Stelle steht... packt man was anderes nach unten, so wird das als allgemeiner Wert verwendet... WARUM??? Wo hat sich da was eingefräst?????????

Danke schonmal im Vorraus!!!

IOAH
Hau, ich habe gesprochen...
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: PHP HILFFFEEEE!!!!! :-)

  Alt 16. Dez 2005, 10:35
Hai IOAH,

gebe "bitte" deinem Thread einen aussagekräftigen Titel. Mit PHP kann so keiner etwas anfangen und Hilfe sucht hier eigentlich jeder.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3

Re: PHP HILFFFEEEE!!!!! :-)

  Alt 16. Dez 2005, 10:51
Hallo,

in Deinem Code taucht immer wieder ?> auf, ohne dass das entsprechende Gegenstück <php vorhanden ist.

An Deiner Stelle würde ich noch einmal die Funktion Create überarbeiten. Ich denke, dass das Objekt durch die Umschaltung PHP - HTML etwas durcheinanderkommt.
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#4

Re: PHP HILFFFEEEE!!!!! :-)

  Alt 16. Dez 2005, 11:25
Hallo,

Code:
$this->$datum = $dat;
$this->$titel = $ti;
$this->$untertitel=$untertit;
$this->$text =$te;
$this->$bild = $bil;
$this->$bildbeschreibung = $bildbe;
Du verwendest das falsch. Das muss so heissen:
Code:
$this->datum = $dat;
$this->titel = $ti;
$this->untertitel=$untertit;
$this->text =$te;
$this->bild = $bil;
$this->bildbeschreibung = $bildbe;
Eigenschaften eines Objekts haben kein Dollarzeichen beim Referenzieren.

Gruß
xaromz
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: PHP HILFFFEEEE!!!!! :-)

  Alt 16. Dez 2005, 18:16
Moin,

ausserdem würde ich nicht HTML- und PHP-Ausgaben mischen.

Bau doch alles in einer PHP-Umgebung zusammen und gib es über einen Rückgabeparameter zurück.
Beim Aufruf deiner Klasse kannst du dann das Echo machen.
Dann wird dein Code gleich viel sicherer, erweiterbarer, stabiler, sprechender, strukturierter, testbarer, ...

Code:
<?php

class EinArtikel {
  var $DATUM;
  var $TITEL;
  var $UNTERTITEL;
  var $TEXT;
  var $BILDBESCHREIBUNG;
  var $BILD;

  /*Konstruktor*/
  function EinArtikel($datum, $titel, $untertitel, $text, $bildbeschreibung, $bild) {
    $this->DATUM = $datum;
    $this->TITEL = $titel;
    $this->UNTERTITEL = $untertitel;
    $this->TEXT = $text;
    $this->BILD = $bild;
    $this->BILDBESCHREIBUNG = $bildbeschreibung;
  }

  function create() {
    $result =
      "<table border=\"0\" width=\"500\">\n" .
      " <tr>\n" .
      " <td colspan=\"3\" background=\"pics/classpics/titel.jpg\" align=\"center\"
             valign=\"top\" width=\"500\" height=\"50\">\n".
      "  <h1>" . $this->TITEL . "</h1>\n";

    if ($this->UNTERTITEL) {
      $result = $result .
        "<h2>" . $this->UNTERTITEL . "</h2>\n"
    } else {
      $result = $result .
        "Hier stand etwas völlig blödsinniges\n";
    }

    $result = $result .
      " </td>\n" .
      " </tr>\n" .
      " <tr>\n" .
      " <td align=\"left\" background=\"pics/classpics/leftright.jpg\"
             width=\"4\" valign=\"top\">\n" .
      " </td>\n" .
      " <td align=\"justify\" width=\"492\" valign=\"top\">\n" .
      "  
" . $this->DATUM . "

" . $this->TEXT . "

\n";
     
    if ($this->BILDBESCHREIBUNG && $this->BILD) {
      $result = $result .
        "<a href=\"index.php?mainframe=" . $this->BILD . "\">" .
        $this->BILDBESCHREIBUNG .
        "</a>\n";
    }

    $result = $result .
      " </td>\n" .
      " <td align=\"right\" background=\"pics/classpics/leftright.jpg\"
             width=\"4\" valign=\"top\">\n" .
      " </td>\n" .
      " </tr>\n" .
      " <tr>\n" .
      " <td colspan=\"3\" background=\"pics/classpics/unten.jpg\" align=\"center\"
             valign=\"top\" width=\"500\" height=\"6\">\n" .
      " </td>\n" .
      " </tr>\n" .
      "</table>\n";
     
    return $result;
  }
}
?>
MfG
Thorsten
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#6

Re: PHP HILFFFEEEE!!!!! :-)

  Alt 17. Dez 2005, 02:10
ich empfehle für die ausgabe immer eine template engine zu nutzen!

http://www.quantendrehung.de/cms/Dreamteam
http://www.phpug-hannover.de/material.php

gruss
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz