Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP Ausgabe einer SQL Tabelle mit Status

Einklappen

Neue Werbung 2019

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

  • PHP Ausgabe einer SQL Tabelle mit Status

    Hallo PHP Freunde,

    ich hab' nochmal 'ne Frage
    Folgendes:
    Ich habe ein CMS, bei dem man im Backend unter dem Menüpunkt "Einstellungen" ein paar änderungen vornehmen kann. Ich möchte das CMS gerne zwei- oder mehrsprachig machen und wollte dann in den Einstellungen eine Tabelle machen, in der die Sprachen, die Installiert sind( zur Zeit Deutsch und Englisch) angeziegt werden ( aus der Datenbank) und man die Sprachen Online/Offline schalten kann. Soweit so gut ...ich habe eine Klasse "Optionen" und eine "optionen.php". Als ich aber das mit den Sprachen anpassen wollte, bekam ich, nachdem ich den Code angepasst hatte, folgende Fehlermeldung:

    Warning: mysql_fetch_assoc() expects parameter 1 to be resource, null given in ... on line 44

    Hier mal die Codes dazu:
    Als erstes die Klasse:
    PHP-Code:
        class Option {
            private 
    $intOptionID;
            private 
    $intOptionTyp;
            private 
    $strOptionWert;
            private 
    $db;
            private 
    $intID;
            private 
    $intStatus;

            function 
    Option(){
                
    $this->db = new Connect();
                
    $this->db $this->db->gibConnect();
            }

            function 
    optionShow(){
                
    $sql_einstellungen 'SELECT * FROM einstellungen';
                
    $result $this->db->query($sql_einstellungen);
                
    $ausgabe '<input name="anzahl" type="hidden" value="'.$result->num_rows.'" />'."\n";
                while(
    $zeile $result->fetch_assoc()){
                    if(!empty(
    $zeile['einstellungenID'])){
                         
    $ausgabe .= '<div class="text">'.$zeile['einstellungenTyp'].'</div><input name="option'
                         
    .$zeile['einstellungenID'].'" value="'
                         
    .$zeile['einstellungenWert'].'" type="text" class="option_box" /><br />'."\n";
                    }
                }
                return 
    $ausgabe;
            }

            function 
    optionEdit($sql){
                
    $result $this->db->query($sql);
                if(!
    $result):
                    return 
    'Werte konnten nicht gespeichert werden.';

                endif;
            }
            function 
    sprachen(){
             
    $sql_sprache 'SELECT * FROM sprache';
             
    $result $this->db->query($sql_sprache);
             
    $ausgabe $result;
             while(
    $zeile $result->fetch_assoc()){
                    if(!empty(
    $zeile['spracheName'])){
                         
    $ausgabe =  $zeile['spracheID']
                                    .
    $zeile['spracheName'];
                                                    }
              return 
    $ausgabe;
                                                    }
                                }
                function 
    statusEdit($id){
                
    $this->intID $id;
                
    $result $this->db->query("SELECT spracheStatus FROM sprache WHERE spracheID = '".$this->intID."'");
                
    $zeile $result->fetch_assoc();
                
    $this->intStatus $zeile['spracheStatus'];
                if(
    $this->intStatus == 1): $i 0;
                elseif(
    $this->intStatus == 0): $i 1;
                endif;
                
    $sql "UPDATE sprache SET spracheStatus = '".$i."' WHERE spracheID = '".$this->intID."'";
                
    $result $this->db->query($sql);
            } 
    Und jetzt noch die Option.php

    PHP-Code:
    <div id="seite">Einstellungen<hr /></div>
    <form id="formular" enctype="multipart/form-data" method="post">

    <?php

        $op 
    = new Option();
        echo 
    $op->optionShow();
        echo 
    $op->sprachen();
    ?>

    <br />
     <input name="abschicken" type="submit" value="Speichern" id="button" />
    </form>
    <?php

        
    if(isset($_POST['abschicken'])):
            for( 
    $i 1$i <= $_POST['anzahl'] ; $i++ ){
                
    $name 'option'.$i;
                
    $sql "UPDATE einstellungen SET einstellungenWert = '".$_POST[$name]."'
                        WHERE einstellungenID = '"
    .$i."'";
                
    $ausgabe $op->optionEdit($sql);
                echo 
    $ausgabe;

            }
            echo
    '<meta http-equiv="refresh" content="0;URL=cms.php?datei=option" />';
        endif;

    ?>
    <table id="uebersicht">
     <tr>
      <th class="titel">Sprache</th>
      <th class="status">Status</th>
      <th class="edit">&nbsp;</th>
     </tr>
    <?php
        $show 
    20;
        
    $result $db->query("SELECT COUNT(*) FROM sprache");
        
    $zeile $result->fetch_assoc();
        
    $anzahl $zeile['anzahl'];
        
    $sql "SELECT spracheID AS id,  spracheKuerzel AS kuerzel, spracheName AS name, spracheStatus AS status, FROM sprache ORDER BY spracheID DESC LIMIT ".$datensatz.", ".$show;

      
    $result $db->$sql;
        while(
    $row = ($row=mysql_fetch_assoc($result))){
            
    $status $zeile['status'];
            if( 
    $status == ): $farbe "rot";
            elseif( 
    $status == ): $farbe "gruen";
            endif;
            
    $datum $zeile['datum'];
            
    $datum date('d.m.Y'$datum);
            echo 
    '<tr>
                    <td class="datum">'
    .$datum.'</td>
                    <td class="titel"><a href="cms.php?datei=startseite&'
    .$_GET['datei'].'='.$zeile['id'].'">'.$zeile['titel'].'</a></td>
                    <td class="status"><form method="post" action="">
                    <input name="status" type="submit" value="'
    .$zeile['id'].'" class="'.$farbe.'" />
                    </form></td>
                    <td class="edit"><form method="post" action="">
                    <input name="edit" type="submit" value="'
    .$zeile['id'].'" class="edit_button" />
                    </form></td>
                  </tr>'
    ;
    }
    ?>
    Was is' da Falsch, bzw. was muss ich da ändern?


  • #2
    mysql_fetch_assoc() expects parameter 1 to be resource - Google-Suche
    http://hallophp.de

    Kommentar


    • #3
      Zitat von invidicult Beitrag anzeigen
      PHP-Code:
          $sql "SELECT spracheID AS id,  spracheKuerzel AS kuerzel, spracheName AS name, spracheStatus AS status, FROM sprache ORDER BY spracheID DESC LIMIT ".$datensatz.", ".$show;

        
      $result $db->$sql;
          while(
      $row = ($row=mysql_fetch_assoc($result))){ 
      Was soll das denn darstellen?

      Mich beschleicht das Gefühl, du hast keine Ahnung von dem, was du da tust, oder?
      Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

      Kommentar


      • #4
        Also ich weiß schon, was ich da tue...vorher hatte ich
        PHP-Code:
        $result$db->query($sql); 
        Und es hat auch nicht funktioniert!

        PHP-Kenntnisse:
        Anfänger

        Kommentar


        • #5
          Zitat von invidicult Beitrag anzeigen
          Also ich weiß schon, was ich da tue...
          Nein, weißt du offenbar nicht.

          vorher hatte ich [...] Und es hat auch nicht funktioniert!
          Aha - und damit begründest du, dass du wüsstest, was du tust? Eigenartige Logik.

          PHP-Kenntnisse:
          Anfänger
          Deshalb: Informieren.

          Die zitierte Fehlermeldung kommt höchstwahrscheinlich daher, dass du in deiner Query einen Fehler hast.
          Also finde heraus, welchen.
          Debugging:SQL - PHP.de Wiki

          Kommentar


          • #6
            Zitat von invidicult Beitrag anzeigen
            Also ich weiß schon, was ich da tue...vorher hatte ich
            PHP-Code:
            $result$db->query($sql); 
            Und es hat auch nicht funktioniert!

            PHP-Kenntnisse:
            Anfänger
            Du vermischst die Dinge miteinander.

            Wenn du $db->query() verwendest - warum dann nicht auch $db->fetch_assoc(), so wie im Code der Klasse Option?

            mysql_fetch_assoc benötigt jedenfalls eine Resource, die mysql_query erstellt hat.
            Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

            Kommentar

            Lädt...
            X