Login

Name oder Email:   Passwort:   
 Registrieren | Passwort vergessen?

Thema ansehen

Themen Autor: Rodi20
Thema ID: 31
Themen Information
Beiträge: 10 » Gelesen: 2290 mal.
 Thema drucken
Eine PHP im Chat schreiben lassen
Rodi20
Hallo,
ist es möglich eine php-datei bei Aufruf (z.b. per Cronjob) etwas in den Chat schreiben zu lassen.
Am liebsten über einen dauerhaft "eingeloggten" Nick, notfalls wie der Würfel über System.
Kann eigentlich nicht so schwer sein, stelle mich aber gerade irgendwie zu dumm an :-)
Vielen Dank im voraus.
 
Top
Rodi20
Hmm, doch so schweer?
So viele views, und keiner schreibt was?
Dachte eigentlich das ist eine Standartfrage und ich war nur zu dumm sie im Forum zu finden ...
Gibt doch bestimmt zig webradios, die auf diese weise die aktuell laufenden Titel in die Chats rieseln lassen wollen, oder?
 
Top
Harlekin
Direkten Code kann ich nicht liefern, nur Anregungen.

Vielleicht könnte das über ReloaderMessages.class.php realisiert werden.

Andererseits sollte es auch über eine seperate php Datei gehen, die eine Datenbankanbindung zum Chat haben muss.
Ein array erstellen mit den Mitteilungen, die im Chat angezeigt werden sollen.
Per Zufall (mit rand) die Mitteilung aus dem array holen und die Mitteilung in die Tabelle etchat_messages schreiben lassen.
Zum Abschluss die php Datei mit einem Cronjob ansteuern.
Codepfuscher bei der Arbeit.
Das Grauen hat halt viele Gesichter!
 
Top
Rodi20
Guten Morgen, danke für die Nachricht, habe es vergangene Nacht selbst geschafft, ist eine Mischung aus der Datei "Zusatztool_ExtreneAnzeige_Interface.php (zur Anbindung der Datenbank) und dem Würfel (Zur Textausgabe) und entsprechend eigenem Code (zur Ausgabe von 30 verschiedenen Textzeilen im Zufallsprinzip (smilies)) Das ganze dann einfach in eine seperate PHP speichern und diese per Cronjob, entweder vom eigenem Server oder wer das nicht hat Dienste wie Cronjob.de im gewünschten Intervall z.b. alle 5 Minuten aufrufen lassen. Ich poste mal den Code hier:
Download Code  Code Alles auswählen

<?php

// like $GLOBALS["path"] = "./et_chat_v3.06/";
$GLOBALS["path"] = "./";

function __autoload($class_name) {
      require_once ($GLOBALS["path"].'class/'.$class_name.'.class.php');      
}

class ExternUserView extends DbConectionMaker
{
   /**
   * Constructor
   *
   * @uses ConnectDB::sqlGet()
   * @uses ConnectDB::close()   
   * @return void
   */
   public function __construct (){
   
      // call parent Constructor from class DbConectionMaker
      parent::__construct();
      
      unset($GLOBALS["path"]);

       $Wuerfelauge=rand(1,30);
       
       if ($Wuerfelauge == 1) {
       $outline = ":dance1:dance1:dance1:dance1";   
       }
       if ($Wuerfelauge == 2) {
       $outline = ":bongo:bongo:bongo:bongo";   
       }
              if ($Wuerfelauge == 3) {
       $outline = ":dance4:dance4:dance4:dance4";   
       }
              if ($Wuerfelauge == 4) {
       $outline = ":dance5:dance5:dance5:dance5";   
       }
              if ($Wuerfelauge == 5) {
       $outline = ":dance2:dance2:dance2:dance2";   
       }
              if ($Wuerfelauge == 6) {
       $outline = ":girl8:girl8:girl8:girl8";   
       }
              if ($Wuerfelauge == 7) {
       $outline = ":girl11:girl11:girl11:girl11";   
       }
              if ($Wuerfelauge == 8) {
       $outline = ":hahn:hahn:hahn:hahn";   
       }
              if ($Wuerfelauge == 9) {
       $outline = ":suche";   
       }
              if ($Wuerfelauge == 10) {
       $outline = ":sing1:sing1:sing1";   
       }
              if ($Wuerfelauge == 11) {
       $outline = ":daggi:daggi:daggi";   
       }
              if ($Wuerfelauge == 12) {
       $outline = ":umschau:umschau:umschau";   
       }
              if ($Wuerfelauge == 13) {
       $outline = ":lalala:lalala:lalala";   
       }
              if ($Wuerfelauge == 14) {
       $outline = ":walzer:walzer:walzer";   
       }
              if ($Wuerfelauge == 15) {
       $outline = ":tl";   
       }
              if ($Wuerfelauge == 16) {
       $outline = ":netti:netti:netti";   
       }
              if ($Wuerfelauge == 17) {
       $outline = ":freddy:freddy:freddy";   
       }
              if ($Wuerfelauge == 18) {
       $outline = ":dkugel:dkugel:dkugel";   
       }
              if ($Wuerfelauge == 19) {
       $outline = ":stern5:stern5:stern5";   
       }
              if ($Wuerfelauge == 20) {
       $outline = ":blume:blume:blume";   
       }
              if ($Wuerfelauge == 21) {
       $outline = ":disco1:disco1:disco1";   
       }
              if ($Wuerfelauge == 22) {
       $outline = ":disco2:disco2:disco2";   
       }
              if ($Wuerfelauge == 23) {
       $outline = ":disco3:disco3:disco3";   
       }
              if ($Wuerfelauge == 24) {
       $outline = ":disco4:disco4:disco4:disco4";   
       }
              if ($Wuerfelauge == 25) {
       $outline = ":esel:esel:esel";   
       }
              if ($Wuerfelauge == 26) {
       $outline = ":frau:frau:frau";   
       }
              if ($Wuerfelauge == 27) {
       $outline = ":girl3:girl3:girl3";   
       }
              if ($Wuerfelauge == 28) {
       $outline = ":girl10:girl10:girl10:girl10";   
       }
              if ($Wuerfelauge == 29) {
       $outline = ":girl9:girl9:girl9:girl9";   
       }
              if ($Wuerfelauge == 30) {
       $outline = ":green:green:green";   
       }
       
       $this->dbObj->sqlSet("INSERT INTO {$this->_prefix}etchat_messages ( etchat_user_fid , etchat_text, etchat_text_css, etchat_timestamp, etchat_fid_room, etchat_privat)
       VALUES ( 1, '".$_POST['username'].$outline."', 'color:#".$_SESSION['etchat_'.$this->_prefix.'syscolor'].";font-weight:normal;font-style:normal;', ".date('U').", ".(int)$_POST['room'].", 0)", false);


      // close DB connect
      $this->dbObj->close();
      
   }
}


In der Ausgabezeile kann sicher noch einiges weggelassen werden, 'username' funktioniert z.B. leider eh nicht, auch nicht wenn ich ihn vorher mit $username = "..."; definiere. Liegt wohl daran, daß der würfel auch über System kommt, und dann nur im Text der Nick von dem steht, der gewürfelt hat ^^

So kommen auch in dem Skript die Outlines über System in den Chat, den user System kann man aber in der Datenbank (phpMyAdmin) ganz leicht umbenennen.

Interessant wäre nun noch zu wissen, wie man diesen User auch dauerhaft in der Userliste anzeigen kann, oder es von einem anderem dauerhaft eingeloggtem User aus senden kann, damit ich System wieder in System zurück umbenennen kann, für die eigentlichen Systemmeldungen ...

Vielen Dank
 
Top
Rodi20
Ok, auch schon selbst geschafft ^^

und zwar in der chat.js

Suchen:
Download Code  Code Alles auswählen
var anzahl_der_user_im_chat=0;

Ersetzen durch
Download Code  Code Alles auswählen
var anzahl_der_user_im_chat=1;


= Gesammt-User-Zahl um 1 erhöhen

Suchen:
Download Code  Code Alles auswählen
var show_anz_pro_room = (anz_im_room>0) ? " ("+anz_im_room+")" : "";

Eine Zeile darüber schreiben:
Download Code  Code Alles auswählen
anz_im_room++;


= Userzahl im Raum um 1 Erhöhen

suchen:
Download Code  Code Alles auswählen
if (allowed==1) inner_html+="<div class=\"rooms\" id=\"room_"+aktuelle_room_id+"\">"+jsonObj.userOnline[i].room+show_anz_pro_room+"</div>";


ersetzten durch:
Download Code  Code Alles auswählen
if (allowed==1) inner_html+="<div class=\"rooms\" id=\"room_"+aktuelle_room_id+"\">"+jsonObj.userOnline[i].room+show_anz_pro_room+"<br><img src=\"img/user_comment_w_self.png\"> Erna</div>";


Hierdurch wir der Nick Erna Hinzugefügt.
sollte ein männlicher Nick gewählt werden
dann statt user_comment_w_self.png
natürlich user_comment_m_self.png benutzen
Bearbeitet von Rodi20 am 13.04.2022 - 11:55
 
Top
Springe ins Forum:

Ähnliche Themen

Thema Forum Antworten / Angesehen Letzter Beitrag
Et-Chat - Eigenständiges Portal ET-Chat allgemein 10 / 1190 04.09.2025 - 08:32
eine 2 Box auf die Linken Seite ET-Chat allgemein 4 / 1300 20.03.2025 - 21:25
ET-Chat Darstellung Handy ET-Chat allgemein 2 / 778 12.01.2025 - 05:46
smileys im Chat ET-Chat allgemein 2 / 1729 27.11.2024 - 06:42
ET Chat Mod für die Version et_chat_v307r3 ET-Chat allgemein 17 / 8653 27.04.2024 - 12:20
Login
Name oder Email

Passwort



Noch kein Mitglied?
Klicke hier um dich zu registrieren

Passwort vergessen?
Um ein neues Passwort anzufordern klicke hier.
Wer ist im Chat?
Gastzugang geschlossen!

0 User im Chat
Teamspeak
Harlekins Welt
Eingangshalle
« ★ » Allgemein « ★ »
Laberecke
Harlekin
Quasselbox
Up & Download
« ❑ » Intern « ❑ »
Besprechung
« ● » Abwesend « ● »
kurz < 30 Min.
lang > 30 Min.

Discord

Joinen
Slider
Security
Geschützt durch:
HP-Detect
Werbung
R8HL GERMANY

Über HP-4-Fun

HP-4-Fun

ist ein privates, nicht kommerzielles, Projekt, welches 2019 von Rolly8-HL und mir (Harlekin) gestartet wurde.

HP-4-Fun 2.0 ist nur für den Eigenbedarf geschrieben worden. Ein Downloadpaket von HP-4-Fun 2.0 wird es nicht geben!

Letzte Kommentare

Informationen

Zuletzt Online