Ankündigung

Einklappen
Keine Ankündigung bisher.

String Problem!

Einklappen

Neue Werbung 2019

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

  • String Problem!

    Hi Leute,
    Ich hoffe ihr könnt mir helfen!!!

    Ich habe Folgenden php text doch im Browser gibt er mir immer
    diesen Fehler:

    Catchable fatal error: Object of class stdClass could not be converted to string in /usr/export/www/hosting/geclan/Eigenehp/admin/profil.php on line 58

    Hier der php text:
    PHP-Code:
    <?php
    session_start
    ()
    ?>
      <?php
    if(!isset($_SESSION["username"]))
       {
       echo 
    "Bitte erst <a href=\"index.html\">einloggen";
       exit;
       }
    ?>
      <?php
    $verbindung 
    mysql_connect("localhost""knuff" "pw")
    or die(
    "Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("knuff") or die ("Datenbank konnte nicht ausgewählt werden"); 
    ?>
      <?php
     $user 
    $_GET["user"];
     
    $abfrage "SELECT * FROM profil WHERE username = '$user'";
     
    $ergebnis mysql_query($abfrage);
     echo
    "<table width=\"96%\" height=\"21\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
     while(
    $row mysql_fetch_object($ergebnis))
        {
        echo
    "
    <tr>
        <td height=\"18\" colspan=\"3\" align=\"center\" background=\"Bilder/scanline.jpg\"><span class=\"Stil24\">Daten</span></td>
      </tr>
      <tr>
        <td width=\"205\" height=\"81\" rowspan=\"6\" valign=\"middle\"><center>
          <span><img src=\"admin/avatar/
    $row->bild\"align=\"texttop\" /></span>      
        </center>    </td>
        <td width=\"115\" valign=\"middle\"><span>Name:</span></td>
        <td width=\"405\" height=\"21\" valign=\"middle\"><span>
    $row->vorname $row->nachname</span></td>
      </tr>
      <tr>
        <td valign=\"middle\">Geburtsdatum:</td>
        <td height=\"21\" valign=\"middle\">
    $row->geb</td>
      </tr>
      <tr>
        <td height=\"18\" colspan=\"3\" align=\"center\" background=\"Bilder/scanline.jpg\">Hobbys</td>
      </tr>
      <tr>
        <td height=\"11\" colspan=\"3\" align=\"center\" valign=\"top\"><span>
    $row-></span></td>
      </tr>
      <tr>
        <td height=\"15\" colspan=\"3\" align=\"center\" valign=\"top\" background=\"Bilder/scanline.jpg\">Kontakte</td>
      </tr>
      <tr>
        <td height=\"15\" colspan=\"2\" align=\"right\" valign=\"middle\">E-Mail:</td>
        <td height=\"15\" align=\"center\">
    $row->email</td>
      </tr>
      <tr>
        <td height=\"15\" colspan=\"2\" align=\"right\" valign=\"top\">ICQ: </td>
        <td height=\"15\" align=\"center\" valign=\"middle\">
    $row->icq</td>
      </tr>
      <tr>
        <td height=\"15\" colspan=\"2\" align=\"right\" valign=\"middle\">Skype:</td>
        <td height=\"15\" align=\"center\" valign=\"top\">
    $row->skype</td>
      </tr>
      <tr>
        <td height=\"15\" colspan=\"2\" align=\"right\" valign=\"middle\">Msn:</td>
        <td height=\"15\" align=\"center\" valign=\"top\">
    $row->msn</td>
      </tr>
          "
    ;
        }
    echo
    "</table>";
    ?>
    Und die zeile 58 ist die hier!

    PHP-Code:
    <td height=\\"15\" align=\"center\">$row->email</td> 
    Da kommt vor dem 15 noch n \ dingsda!

  • #2
    Also zuerst einmal, warum kommt bei dir im Script des öfteren folgendes vor?
    PHP-Code:
    ?>
    <?php
    Warum machst du den PHP-Bereich zu und dann gleich wieder auf? Macht meiner Meinung nach überhaupt keinen Sinn.

    Zu deinem Problem: Mach mal ganz am Anfang deiner while-Schleife (bevor du die Tabelle ausgibst) folgendes:
    PHP-Code:
    var_dump($row->email); 
    und schreib hier mal rein, was ausgegeben wird. Var_dump() gibt dir alle möglichen Informationen zu einer Variable (meistens Typ, Länge und Wert, bei Arrays alle Unterelemente etc) aus.

    Kommentar


    • #3
      ja wenn ich des vor dem while reintu dann kommt 'NULL' raus...
      Und wenn ich es in die ausgabe reinsetze von der while schleife dann kommt:
      string(25) "dominik@pflumm-online.com"

      Hmm.... ja des wusste ich schon davor!!!
      Aber woran kann des sonst liegen???

      Kommentar


      • #4
        Dass davor NULL rauskommt ist logisch, aber in der while-Schleife sagt die Fehlermeldung ja, dass das Objekt nicht vom Typ "String" ist und nicht dahin konvertiert werden kann. Laut var_dump ist es aber bereits ein String. Kannst du mal versuchen, die Variable im String zu escapen, sprich mit ".$row->email." anstatt einfach direkt reinschreiben?

        PS: Meistens reicht ein ! und auch ein ?. Vor allem bei den Ausrufezeichen wirkt das sehr unfreundlich.

        Kommentar


        • #5
          also soll ich als value ".$row->email." einsetzen oder wo soll ich des reinsetzen?

          Danke Knuff

          Kommentar


          • #6
            Dort wo momentan $row->email steht. Glaube zwar nicht, dass es daran liegt, weil es ja bei den anderen Variablen auch geht, aber momentan sehe ich wirklich nichts, was falsch sein könnte.

            Kommentar


            • #7
              Lass das Skript mal bitte so anfangen
              PHP-Code:
              <?php
              function myEHandler($errno$errstr$errfile$errline$errcontext)
              {
               
              $source file($errfile);
               
              $s "$errstr $errline: " $source[$errline-1];
               echo 
              '<div>' htmlentities($s) . '</div>';
              }
              set_error_handler('myEHandler');
              session_start();
              Was wird dann ausgegeben?

              Kommentar


              • #8
                <td height=\"15\" align=\"center\">". $row->email ."</td>

                so meint er das
                Under Construktion

                Kommentar


                • #9
                  Also david jetzt kommt des hier:
                  PHP-Code:
                  A session had already been started ignoring session_start() 18session_start(); 
                  string(25"dominik@pflumm-online.com"
                  Object of class stdClass could not be converted to string 66: <td height=\"15\" align=\"center\">$row->email</td> 
                  ja und des
                  PHP-Code:
                  ".$row->email." 
                  geht auch nicht!

                  Kommentar


                  • #10
                    Wahrscheinlich gibt es kein Feld email.
                    PHP-Code:
                    while($row mysql_fetch_object($ergebnis))
                    {
                     echo 
                    '<div>keys: ';
                     foreach(
                    $row as $key=>$value) {
                      echo 
                    '"'$key'" ';
                     }
                     echo 
                    '</div>'

                    Kommentar


                    • #11
                      Zitat von David Beitrag anzeigen
                      Wahrscheinlich gibt es kein Feld email.
                      Daran habe ich auch schon gedacht, das widerspricht aber seiner Antwort auf meinen var_dump Vorschlag. Da wird ja eine eMail-Adresse ausgegeben.

                      Kommentar


                      • #12
                        ja daran hab ich auch schon gedacht aber wenn ich des ganze ohne die Tabelle ausgebe dann tut es!
                        Und wenn ich des Halt in bisschen in Form bringen will hab ich die Tabelle!
                        Und seit ich die Tabelle reingemacht hab gehts nicht mehr!

                        Hab extra mehrfach nachgekuckt in der datenbank!

                        Kommentar


                        • #13
                          Dann bin ich mal gespannt, was
                          PHP-Code:
                          <?php
                          error_reporting
                          (E_ALL);
                          ini_set('display_errors'1);
                          session_start();

                          if(!isset(
                          $_SESSION["username"]))
                          {
                            echo 
                          'Bitte erst <a href="index.html">einloggen';
                            exit;
                          }

                          $verbindung mysql_connect("localhost""knuff" "pw") or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
                          mysql_select_db("knuff"$verbindung) or die ("Datenbank konnte nicht ausgewählt werden");
                          $user mysql_real_escape_string($_GET["user"], $verbindung) or die(mysql_error());
                          $abfrage "
                            SELECT bild,vorname,nachname,geb,email,icq,skype,msn
                            FROM profil
                            WHERE username = '
                          $user'";
                          $ergebnis mysql_query($abfrage);

                          echo 
                          '<table width="96%" height="21" border="0" cellpadding="0" cellspacing="0">';
                          while(
                          $row mysql_fetch_object($ergebnis))
                          {
                          ?>
                            <tr>
                              <td height="18" colspan="3" align="center" background="Bilder/scanline.jpg"><span class="Stil24">Daten</span></td>
                            </tr>
                            <tr>
                              <td width="205" height="81" rowspan="6" valign="middle"><center>
                                <span><img src="admin/avatar/<?php echo $row->bild?>"align="texttop" /></span>
                              </center>    </td>
                              <td width="115" valign="middle"><span>Name:</span></td>
                              <td width="405" height="21" valign="middle"><span><?php echo $row->vorname' '$row->nachname?></span></td>
                            </tr>
                            <tr>
                              <td valign="middle">Geburtsdatum:</td>
                              <td height="21" valign="middle"><?php echo $row->geb?></td>
                            </tr>
                            <tr>
                              <td height="18" colspan="3" align="center" background="Bilder/scanline.jpg">Hobbys</td>
                            </tr>
                            <tr>
                              <td height="11" colspan="3" align="center" valign="top"><span><?php /* da fehlt was $row-> */?></span></td>
                            </tr>
                            <tr>
                              <td height="15" colspan="3" align="center" valign="top" background="Bilder/scanline.jpg">Kontakte</td>
                            </tr>
                            <tr>
                              <td height="15" colspan="2" align="right" valign="middle">E-Mail:</td>
                              <td height="15" align="center"><?php $row->email?></td>
                            </tr>
                            <tr>
                              <td height="15" colspan="2" align="right" valign="top">ICQ: </td>
                              <td height="15" align="center" valign="middle"><?php echo $row->icq?></td>
                            </tr>
                            <tr>
                              <td height="15" colspan="2" align="right" valign="middle">Skype:</td>
                              <td height="15" align="center" valign="top"><?php echo $row->skype?></td>
                            </tr>
                            <tr>
                              <td height="15" colspan="2" align="right" valign="middle">Msn:</td>
                              <td height="15" align="center" valign="top"><?php echo $row->msn?></td>
                            </tr>
                          <?php
                          }
                          ?>
                          </table>
                          macht. Wenn Du ausser den Verbindungsdaten noch irgendwas am Skript änderst, bitte mitteilen.

                          Kommentar


                          • #14
                            ja habe dass problem gelöst!
                            Noch mal ein danke an alle die mir geholfen haben!

                            Hier noch mal der fertige Quelltext
                            PHP-Code:
                            <?php
                            $verbindung 
                            mysql_connect("localhost""knuff" "pw") or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
                            mysql_select_db("knuff"$verbindung) or die ("Datenbank konnte nicht ausgewählt werden");
                            $user mysql_real_escape_string($_GET["user"], $verbindung) or die(mysql_error());
                            $abfrage "
                              SELECT bild,username,vorname,nachname,geb,email,icq,skype,msn,hobbys,mich
                              FROM profil
                              WHERE username = '
                            $user'";
                            $ergebnis mysql_query($abfrage);

                            while(
                            $row mysql_fetch_object($ergebnis))
                            {
                            ?>
                            <table width="96%" height="211" border="0" cellpadding="0" cellspacing="0">
                              <tr>
                                <td height="18" colspan="3" align="center" background="Bilder/scanline.jpg"><span class="Stil24">Daten</span></td>
                              </tr>
                              <tr>
                                <td width="205" height="81" rowspan="5" valign="middle"><center>
                                  <span><img src="admin/avatar/<?php echo $row->bild?>"align="texttop" /></span>
                                </center>    </td>
                                <td width="115" valign="middle">Username:</td>
                                <td width="407" height="19" valign="middle"><?php echo $row->username ?></td>
                              </tr>
                              <tr>
                                <td valign="middle"><span>Name:</span></td>
                                <td height="21" valign="middle"><span><?php echo $row->vorname' '$row->nachname?></span></td>
                              </tr>
                              <tr>
                                <td height="18" align="left">Geburtsdatum:</td>
                                <td height="18" align="left"><?php echo $row->geb?></td>
                                <td height="18" align="center">&nbsp;</td>
                              </tr>
                              <tr>
                                <td height="11" colspan="3" align="center" valign="top" background="Bilder/scanline.jpg"><span>Hobbys</span></td>
                              </tr>
                              <tr>
                                <td width="115" colspan="3" align="center" valign="top"><?php echo $row->hobbys ?></td>
                              </tr>
                              
                              <tr>
                                <td height="15" colspan="3" align="center" valign="top" background="Bilder/scanline.jpg">Kontakte</td>
                              </tr>
                              <tr>
                                <td height="15" colspan="2" align="right" valign="top">E-Mail:</td>
                                <td height="15" align="center" valign="middle"><?php $row->email?></td>
                              </tr>
                              <tr>
                                <td height="15" colspan="2" align="right" valign="top">ICQ: </td>
                                <td height="15" align="center" valign="middle"><?php echo $row->icq?></td>
                              </tr>
                              <tr>
                                <td height="15" colspan="2" align="right" valign="middle">Skype:</td>
                                <td height="15" align="center" valign="top"><?php echo $row->skype?></td>
                              </tr>
                              <tr>
                                <td height="15" colspan="2" align="right" valign="middle">Msn:</td>
                                <td height="15" align="center" valign="top"><?php echo $row->msn?></td>
                              </tr>
                              <tr>
                                <td height="15" colspan="3" align="center" valign="middle" background="Bilder/scanline.jpg">&Uuml;ber Mich </td>
                              </tr>
                              <tr>
                                <td height="15" colspan="3" align="center" valign="middle"><?php echo $mich ?></td>
                              </tr>
                            </table>
                            <?php
                            }
                            ?>
                            Bitte Thread schliessen

                            Kommentar


                            • #15
                              Ähm und so wird dir die eMail-Adresse normal in der Tabelle angezeigt? Denn da steht ja kein echo oder so, demnach dürfte da auch nichts drin stehen oder übersehe ich etwas?

                              Kommentar

                              Lädt...
                              X