Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 29-11-2017, 14:32
sanktusm
 Registrierter Benutzer
Links : Onlinestatus : sanktusm ist offline
Registriert seit: Aug 2005
Beiträge: 633
sanktusm zeigte ein beschämendes Verhalten in der Vergangenheit
Standard GROUP BY mit einem Spaltenwert nur eindeutige Inhalte ausgeben

Hallo,
ich habe hier eine Reihe mit sagen wir dem Inhalt eins für die Spalte raum. Dieser Inhalt ist in der Datenbank zwei mal vorhanden. Nun möchte ich, dass die Reihe nur einmal ausgegeben wird. Versucht habe ich es so:

PHP-Code:
  public static function refreshRooms($id$consultant)
    {
      
$arr = array();
      
$jsonData '{"results":[';
      
$db_connection = new mysqliself::DB_HOSTself::DB_USERself::DB_PASSWORDself::DB_NAME);
      
$db_connection->query"SET NAMES 'UTF8'" );
      
$statement $db_connection->prepare"SELECT DISTINCT id, author, room FROM wov_webchat_lines WHERE id > ? AND ts >= DATE_SUB(NOW(), INTERVAL 10 HOUR) AND author != '$consultant' GROUP BY room");
      
$statement->bind_param'i'$id);
      
$statement->execute();
      
$statement->bind_result($id$author$room);
      
$line = new stdClass;
      while (
$statement->fetch()) {
        
$line->id $id;
        
$line->room $room;
        
$line->author $author;
        
$line->main_id 158;
        
$line->forms_token $_SESSION['forms_token'];
        
$arr[] = json_encode($line);
      }
      
$statement->close();
      
$db_connection->close();
      
$jsonData .= implode(","$arr);
      
$jsonData .= ']}';
      return 
$jsonData;
    } 
Hat mir jemand ein Tipp, wie man das am besten hinkriegt?
Mit Zitat antworten