Ankündigung

Einklappen
Keine Ankündigung bisher.

Tabelle wird nicht gezeigt

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

  • Tabelle wird nicht gezeigt

    Hallo , Erste zu sagen das mein deutsch nicht so gut ist ... , mein php kenntnisse sind sehr einfacher...

    Meine Probleme, ich habe Zwei dateien , eine um meine Kommentar zu Verwalten , classprove.php diese Code haben mir gegeben..., das ganze Code hier , und prove_comment.php , wo möchte was auf meine Datenbank in Tabelle wird gezeigt , die code ist diesen,

    PHP-Code:
    <?php
    ini_set
    ('display_errors'1);
    ini_set('display_startup_errors'1);
    error_reporting(E_ALL);

    require 
    'classprove.php';

    $New = new ClassProveContakt3();
    $New-> writeCommentToDatabase();






    class 
    comments {

        
    # …
    function printAdminTable() {
             
    $arrRows $New->writeCommentToDatabas()-> $dbh;
             if ( 
    $arrRows ) {
                 echo 
    '    
                  <form action="classprove.php" method="POST">
                       <table>'
    ;
                 foreach ( 
    $arrRows as $row ) {
                    echo <<<EOT
                          <tr>
                              <td>
    {$row['name']}</td>
                              <td>
    {$row['email']}</td>
                              <td>
    {$row['datetime']}</td>
                              <td>
    {$row['ip']}</td>
                              <td><button type "submit" name="delete" value="
    {$row['id']}">löschen</button>
                          </tr>

    EOT;
                 }
                 echo 
    '
                       </table>
                   </form>'
    ;
             } else {
                  echo 
    '<p class="error">Hm. $arrRows enthält nichts oder false. Entweder ist die Datenbank noch leer oder da ist was falsch.</p>';
             }            
         }

         
    # …

    }
    $News = new comments();

    $News -> printAdminTable();
    Wie meine Tabelle auf phpmyadmin aussiehst

    When schreibe auf meine Browser, http://localhost/prove_comment.php
    bekomme dieser Warnung,

    Fatal error: execute failed: SQLSTATE=00000, Error Info=Array ( [0] => 00000 [1] => [2] => ) in /var/www/html/classprove.php on line 123
    Auf der Datei classprove.php , in der Zeile 122-123 , habe

    PHP-Code:
    if ( $ok === false  ) {
                      
    trigger_error'execute failed: SQLSTATE=' $this -> dbh -> errorCode() . ', Error Info=' print_r($this -> dbh -> errorInfo(), true),  E_USER_ERROR ); 

    Wie habe verstand , diese Warnung sagt dass die Code Gute ist , aber kann nicht zu Datenbank zu schicken...

    Meine Wünsche ist bekomme auf der Datei prove_comment.php , wie diese Screeshot zeigt


    Kann Bitte jemand hilfe mit diesem Probleme , Danke !


  • #2
    Wo kommt $ok her?

    Und wieso wird bei der HTML-Ausgabe der Kontextwechsel nach HTML nicht beachtet?

    Kommentar


    • #3
      Wo kommt $ok her?
      Eine Gute Frage.....die code von classprove.php haven auf andere Forum bekommen.. ich bin sehr neu mit php ,wie habe verstand ok wieder fragt ob verbindung mit sql gibt , das ganze Funtion,

      PHP-Code:
      function writeCommentToDatabase() {
          
      // Establish connection with MYSQL Server

              
      if ( ! $this -> dbh ) {
                  
      $this -> getConnection();
              }

              
      //Prepare Query of SQL
              
      $statement $this -> dbh -> prepare("INSERT INTO mela(name, email, message, datetime, ip) VALUES (:name, :email, :message, :date, :ip)");
              if ( ! 
      $statement ) {
                  
      trigger_error'prepare failed: SQLSTATE=' $this -> dbh -> errorCode() . ', Error Info=' print_r$this -> dbh -> errorInfo(), true ), E_USER_ERROR ) ;
              } else {
                  
      $ok $statement -> bindValue':name',    $this -> Name,         PDO::PARAM_STR )
                     && 
      $statement -> bindValue':email',   $this -> Email,        PDO::PARAM_STR )
                     && 
      $statement -> bindValue':message'$this -> Message,      PDO::PARAM_STR )
                     && 
      $statement -> bindValue':date',    date("Y-m-d H:i:s"), PDO::PARAM_STR )
                     && 
      $statement -> bindValue':ip',      $this -> ip,          PDO::PARAM_STR );
                  if ( ! 
      $ok )  {
                      echo 
      "<br><br>bindValue failed: SQLSTATE=" $this -> dbh -> errorCode() . ", Error Info=" print_r$dbh -> errorInfo(), true ) . "</p>";
                  }
              }
              if ( 
      $ok ) {
                  
      $ok $statement -> execute();
              }

              if ( 
      $ok === false  ) {
                        
      trigger_error'execute failed: SQLSTATE=' $this -> dbh -> errorCode() . ', Error Info=' print_r($this -> dbh -> errorInfo(), true),  E_USER_ERROR );
              } else {
                  
      #echo '<div class="msg">Data Inserted successfully!</div>';
                  
      $this ->  unsetFormdata();
                  return 
      $ok;
              }
          } 
      mit
      PHP-Code:
      if ( ! $statement 
      , wird schon gefragt ....

      Und wieso wird bei der HTML-Ausgabe der Kontextwechsel nach HTML nicht beachtet?
      ich weiß nicht was meinst....

      Kommentar


      • #4
        Hier könnte Google weiterhelfen, siehe Kontextwechsel.
        Aber wenn du so wenig Ahnung hast würde ein PHP Kurs wohl erst mal mehr Sinn ergeben.

        Kommentar


        • #5
          Wenn der Code nicht von dir ist, warum fragst du nicht dort nach, wo du ihn her hast?

          Kommentar

          Lädt...
          X