Eine .js von PHP bearbeiten lassen?!

Voonix

Mitglied
Hallo,

ich habe ein Frage und zwar:

Ich will das die Leute meiner Page den Newsticker ändern können hab auch schon das Script und alles soweit fertig... Eingabefeld Text Eingegeben und dann passiert nichts.

Hier der Code:

PHP:
<?php 

  $ticker=$_POST['ticker']; 

  // Jetzt die Sonderzeichen und Umlaute konvertieren: 

  $ticker=htmlspecialchars ($ticker); 
  $ticker=htmlentities($ticker); 
   
  //Jetzt neuen Ticker-Eintrag erzeugen: 


  $eintrag = "<!--Beginn-->"; 
  $eintrag.="<p><div style='font-family:Verdana; padding-left:0px; font-size:12pt; color:white'><b></b>"; 
  $eintrag.=$ticker; 
  $eintrag.="</div></div><br><br></p>"; 

  //Jetzt Ticker-Datei laden... 

  $bol=file_exists("/moderator.js"); 
  if ($bol) { 
    $datei = fopen("/moderator.js","r"); 
    if ($datei) { 
      $dateigroesse=filesize("/moderator.js"); 
      $inhalt = fread($datei, $dateigroesse); 
      fclose($datei); 
     } 

   // Jetzt den neuen Eintrag einfügen 
     
   $ersetzen = str_replace ("<!--Beginn-->", $eintrag , $inhalt); 


   } 

  // Jetzt aktualisierte Ticker schreiben: 

  $bol=file_exists("/moderator.js"); 
  if ($bol) { 
    $datei= fopen("/moderator.js","w"); 
    if ($datei) { 
      $output = fwrite($datei,$ersetzen); 
      fclose($datei); 
       
     } 
  }  



?>

Dort wird ja die moderator.js bearbeitet kann dass PHP?


MFG

Nik
 
Viel zu kompliziert gelöst. Der Ansatz ist viel eleganter und hat den Vorteil, das du dafür eigentlich nur 2 Scripts brauchst:

Datei index.php:

HTML:
<html>
<head>
<title>testseite</title>
<script type="text/javascript" src="ticker.js.php"></script>
</head>
<body>
......

und die Datei ticker.js.php:

PHP:
<?php
 /// PHP kann auch direkt javascript ausgeben
 echo "alert('test');";
?>

function js_Function( someParameter )
{
    var ele = document.createElement('DIV');
    ele.innerHTML = 'Hier steht dann mal ein toller Text drin ' + someParameter;
    var body = document.getElementByTagName('body');
    body.appendChild( ele );
}
<?php
echo "js_Function('aber völlig sinnlos!');";
?>

Hoffe ich konnte behilflich sein.
 
Danke für die schnelle Antwort...

puuh bin eigentlich totaler Leihe in PHP schaffe es grad so die Scripts umzuschreiben deshalb kann ich leider nicht so viel mit deinem Code anfangen sry...

Hab das Prob aber gelöst war ein schreibfehler von mir :)

Hab aber trotzdem noch ne Frage und zwar wie lösche ich den dort eingegebenen Text wieder?

Danke

MFG
 
Wenn du es wirklich so lösen willst, musst du die Datei wieder einlesen und dann den Teil den du raus löschen willst, einfach mit einem preg_replace() raus löschen. Danach den Inhalt wieder in die Datei rein schreiben.
 
Will es ja net unbedingt so lösen hehe... aber das Prob ist wie gesagt das ich Laihe bin in sachen PHP und nicht von dir verlangen will das du den Code schreibst^^ .

Trotzdem Danke

LG

Nik
 
So mal umgeschrieben:
PHP:
<?php

  $ticker=$_POST['ticker'];

  // Jetzt die Sonderzeichen und Umlaute konvertieren:

  $ticker=htmlspecialchars ($ticker);
  $ticker=htmlentities($ticker);
  

  //Jetzt Gästebuch-Datei laden...

  $bol=file_exists("moderator.js");
  if ($bol) {
    $datei = fopen("moderator.js","r");
    if ($datei) {
      $dateigroesse=filesize("moderator.js");
      $inhalt = fread($datei, $dateigroesse);
      fclose($datei);
     }

   // Jetzt löschen
    
   $löschen = preg_replace ( mixed $pattern, mixed $replacement, mixed $subject [, int $limit [, int &$count]] );


   }

  // Jetzt aktualisiertes Gästebuch schreiben:

  $bol=file_exists("moderator.js");
  if ($bol) {
    $datei= fopen("moderator.js","w");
    if ($datei) {
      $output = fwrite($datei,$ersetzen);
      fclose($datei);
      
     }
  } 



?>

Stimmt das so (Bestimmt net oder hehe)

MFG
 
Also, ich versuch es mal zu erklären:

1. Du hast ein Script, das die grobe Darstellen der HTML-Seite erledigt. In dem resultierendem HTML soll auch ein Ticker eingebunden sein, der dann auf der Seite zu sehen ist. So weit so gut.

2. Der Ticker selber soll Javascript verwenden und bestimmte Einträge darstellen. Die Frage an dieser Stelle is außerdem, wo bekommt der Ticker seine Daten her, die er tickern soll? Datenbank? Anderes?

3. Damit in der Seite ein Ticker angezeigt werden kann, werden bestimmt ein paar JS-Befehle benötigt um den Ticker zu scrollen, oder was auch immer. Dafür hast du ja schon ein JS. Du suchst nur nach einer eleganten/einfachen Lösung, die Daten in den Ticker zu bekommen.

Nr. 3 kann mit der von mir vorgeschlagenen Lösung realisiert werden, wenn du die Daten für den Ticker z.B. in einer DB vor hältst und von da immer abrufst. Eine DB hat den Vorteil, das du nur den Datensatz löschen musst, dann wird die entsprechende Anzeige im Ticker sofort nicht mehr auftauchen.

Wenn du js kennst, dann weißt du sicherlich, das man bestimmte Sachen auch in seperate Dateien (in deinem Falle moderator.js) auslagern kannst. Nirgends steht geschrieben, das diese Datei auch wirklich .js heißen muss und das ihr Inhalt statisch sein muss. Mein Vorschlag wäre hier, einfach ein PHP-Script als Java-Script-Datei einzubinden und die Ausgaben, die PHP macht eben nicht als HTML sondern als Javascript zu formatieren.

Du kannst das ganz einfach testen:

Lege eine Datei jstest.html an, in der du einfach nur folgenden Code einbaust:

HTML:
<html>
<head>
<script type="text/javascript" src="javascripts.php"></script>
</head>
<body>
</body>
</html>

Dann legst du noch eine Datei an, die du javascripts.php nennst und folgenden Code einbaust:

PHP:
<?php
echo "alert('Hallo Welt');";
?>

Wenn du die jstest.html nun in deinem Browser aufrufst, wirst du sofort eine Alert-Box sehen.
 
Hmmm erstmal Danke


Also auf 2. Immoment trag ich alles in die Moderator.js selbst ein...

Aber das mit ner MySql hört sich gut an daran hab ich noch garnet gedacht..

Aber ich weiß nicht wie das Script aussehen muss das das in die Datenbank schreibt und abruft bzw. löscht.

Sry aber ich kenn mich halt net so richtig damit aus...

MFG
 
Zuletzt bearbeitet:
Das Eintragen sollte in dem Moment das schwierigste sein, denn da benötigst du natürlich ein Formular, in das du die Daten eintragen kannst und ein Script, das die Daten aufnimmt und in die Datenbank einträgt.

Für das Abrufen wäre die Datei zuständig, die in unserem Beispiel javascripts.php heißt.

Löschen und Eintragen wären administrative Tätigkeiten, die Du natürlich nur einer eingeschränkten Nutzerzahl (vermutlich nur dir selbst) gestatten darfst.

An dieser Stelle frage ich schon mal, ob und welches Content-Management-System du verwendest.
 
Also hab kein CMS verwende für die Seiten HTML und PHP nur für Gästebch etc..
Hab auch schon ein Formular zum eintragen in den Ticker, welches nur kommt wenn man eingeloggt ist.(hab ich auch mit PHP gelöst).

MFG
 
Zurück