Code Prob mit fwrite & fclose

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • wenn die variable $link['text'] nicht leer wäre, dann würde dein code doch funktionieren!
    verstehe also, dass es hier nicht an der syntax mangelt, sondern an der logik!

    ich weiß nicht, was du statt der link[text] variablen verwenden willst..
    du hast gesagt, dass du den inhalt der google.txt nicht ändern willst und andere datenquellen sind im string nicht erwähnt

    wenn du das problem klären willst, dann poste beispielinhalte, die du in der in der google.txt haben willst.
  • Also, es soll einfach die ganze zeite so:

    Quellcode

    1. $link['text']=eregi_replace("$wort", "<img width=20 height=10 src=zensiert/$img.jpg>", $link['text']);


    in die google.txt schreiben, da ich, schon die datein die in der google.txt stehen dann von alleine rausgenommen werden und von meiner shoutbox ausgabe interpretiert werden -> die var $link['text']

    hatte das vergessen zu sagen.


    Um was es mir jetzt geht ist nur das genau das:

    Quellcode

    1. $link['text']=eregi_replace("$wort", "<img width=20 height=10 src=zensiert/$img.jpg>", $link['text']);

    in die Google.txt geschrieben wird und die var $wort u. $img automatich durch das ersetzt wird was man im Formular eingegeben hat.!
    --Kommt noch--
  • "GFXShorty" schrieb:


    in die Google.txt geschrieben wird und die var $wort u. $img automatich durch das ersetzt wird was man im Formular eingegeben hat.!


    In der Variable $wort wird überhaupt nichts ersetzt! Die Variable $wort muß eine Regular Expression sein, die bestimmt, was in der Variable $link['text'] durch "<img width=20 height=10 src=zensiert/$img.jpg>" ersetzt wird.

    Entweder Du hast die Syntaxt von eregi_replace nicht verstanden, oder Du drückst die mißverständlich aus, mit dem was Du erreichen willst.

    70abc

    PS: Gib uns Doch mal ein konkretes Beispiel, was bei welcher Eingabe genau passieren sollte!
  • Genau.

    In deinem Beispiel

    Quellcode

    1. $link['text']=eregi_replace("$wort", "<img width=20 height=10 src=zensiert/$img.jpg>", $link['text']);

    wird in der Variable $link['text'] wird das $wort durch <img width=20 height=10 src=zensiert/$img.jpg> ersetzt.
    Die Japaner glauben jetzt auch, sie könnten den Superrechner verkaufen. Das wäre
    so, als würde man einen Jumbo-Jet nehmen, vorne und hinten die Spitzen absägen,
    davon 10 Stück zusammenschweißen und als ultimativen Super-Jet verkaufen.
  • Ja genau Max123, die var $link['text'] ist in meiner Shoutbox (ausgabe.php) gesetzt, ich habe in meiner zensur.php z.b. dies drinne stehen!



    Quellcode

    1. $link['text']=eregi_replace("arschloch", "<img width=20 height=10 src=zensiert/zensur1.jpg>", $link['text']);


    Da heiß wenn jemand "ARSCHLOCH" o. "arschloch" groß oder klein schreibt das das durch das bild zensiert/zensur1.jpg ersetzt wird.
    Und ich will so gesagt das man einfach in einem Formular automatich solche zensierten Wörter hinzufügen kann. (jeder kann die Wörter hinzufügen die er gerne in die zensur haben möchte, und sein eigenes bild dafür aussuchen!)

    und deswegen habe ich das so gedacht das man das so hinschreiben kann


    Quellcode

    1. $link['text']=eregi_replace("$wort", "<img width=20 height=10 src=zensiert/$img.jpg>", $link['text']);


    also das man ganz einfach die Daten ausm Formular nimmt und für $wort das wort nimmt was zensiert werden soll und für $img das bild (den bildnamen) was dann da mit eingesetzt wird was mit in den Formular eingegeben wird.!

    Das ganze ist für meine Shoutbox und soll wie ein admin plugin Funktionieren!

    Aber das soll eine extra stehende sache für sich sein das man das auhc für andere Scripte verwenden kann.
    Ich werde dann ganz einfach die zensur.php wo dies

    Quellcode

    1. $link['text']=eregi_replace("arschloch", "<img width=20 height=10 src=zensiert/zensur1.jpg>", $link['text']);


    drinnen steht in meine ausgabe von meiner Shoutbox includen und dann Funktioniert das, das ist mein Ziel was ich erreichen will ;).

    bsp:: http://shake.traffino.de/shoutbox/neu/ausgabe.php

    gebt einfach ma in das Textfeld arschloch ein (das wird ´zensiert)! und ich will nur das man via Formualar zensierungs Wörter adden kann!



    greetZ Shorty
    --Kommt noch--
  • ahaaa.. verstehe.. du willst also den php code in der datei stehen haben
    aber glaube mir.. die lösung die ich auf seite1 gepostet habe ist genau das was du willst ;)

    so erstellst du die textdatenbank

    Quellcode

    1. <?php
    2. if(isset($_POST['link_wort']))
    3. {
    4. $fp=fopen("google.txt", "a");
    5. $intResult = fwrite($fp, "\n".$_POST['link_wort'].'||'.$_POST['link_img']);
    6. fclose($fp);
    7. if(false !== $intResult)
    8. {
    9. echo "Das Wort wurde hinzugefügt!";
    10. } else {
    11. echo "Das Wort konnte nicht zur Zensur hinzugefügt werden!";
    12. }
    13. }
    14. ?>
    15. <table width="499" border="0">
    16. <form method="post" action="<? $_SERVER['PHP_SELF']; ?>">
    17. <tr>
    18. <td width="83">Wort:</td>
    19. <td width="406"><input name="link_wort" type="text" size="50"></td>
    20. </tr>
    21. <tr>
    22. <td>IMG:</td>
    23. <td><input name="link_img" type="text" size="50"></td>
    24. </tr>
    25. <tr>
    26. <td align="center"><input type="reset" value="Reset"></td>
    27. <td><input type="submit" name="send" value="Senden"></td>
    28. </tr>
    29. </form>
    30. </table>
    Alles anzeigen


    und der code muss in deine anwendungen (z.b. shoutbox.php)

    Quellcode

    1. <?php
    2. //array füllen
    3. $eindimensional = file('google.txt');
    4. foreach($eindimensional as $line) {
    5. $line = explode('||', $line);
    6. $left[] = $line[0];
    7. $right[] = $line[1];
    8. }
    9. //deinen text filterst du dann so:
    10. $link['text'] = str_replace($left, $right, $link['text']);
    Alles anzeigen
  • Heya genau, jetzt hast du es ;) THX!!!!!

    und das schreibt das so wie ich das will in meine zensur.php o. google.txt?

    Was ich dich zu meiner besseren Verständnis fragen wollte ist kann ich auch für

    Quellcode

    1. //deinen text filterst du dann so:
    2. $link['text'] = str_replace($left, $right, $link['text']);


    1. kann ich da für str_replace auch eregi_replace benutzen? ja oder?

    2. wie funktioniert das genau mit den var´s $left $right....

    3. was bedeutet genau der code ausschnitt?

    Quellcode

    1. $eindimensional = file('google.txt'); //das habe ich verstanden
    2. foreach($eindimensional as $line) { // die Zeile bitte nochma erklären
    3. $line = explode('||', $line); // und die zeile bitte erklären THX!


    das Verstehe ich nicht ganz der rest ist klar!
    --Kommt noch--
  • "GFXShorty" schrieb:

    Heya genau, jetzt hast du es ;) THX!!!!!

    und das schreibt das so wie ich das will in meine zensur.php o. google.txt?

    Was ich dich zu meiner besseren Verständnis fragen wollte ist kann ich auch für

    Quellcode

    1. //deinen text filterst du dann so:
    2. $link['text'] = str_replace($left, $right, $link['text']);


    1. kann ich da für str_replace auch eregi_replace benutzen? ja oder?

    str_replace -- Ersetzt alle Vorkommen eines Strings in einem anderen String
    eregi_replace -- Ersetzt einen regulären Ausdrück ohne Berücksichtigung von Groß-/Kleinschreibung

    Du kannst es probieren, ich rate aber zu anderem.

    2. wie funktioniert das genau mit den var´s $left $right....
    $left und $right (beide arrays) gehört jeweils zusammen. $left wird durch $right ersetzt. inhalt von google.txt dann z.b.:
    böses wort 1||ersatz 1
    böses wort 2||ersatz 2
    böses wort 3||ersatz 3

    soll ichs noch genauer auseinander nehmen? :D

    3. was bedeutet genau der code ausschnitt?

    Quellcode

    1. $eindimensional = file('google.txt'); //das habe ich verstanden
    2. foreach($eindimensional as $line) { // die Zeile bitte nochma erklären
    3. $line = explode('||', $line); // und die zeile bitte erklären THX!


    das Verstehe ich nicht ganz der rest ist klar!

    also:

    foreach($eindimensional as $line)
    $eindimensional wird feld für feld komplett ausgegeben und ujedes feld ist dann als $line (string) verfügbar.

    $line = explode('||', $line);
    $line (string) wird an dem zeichen "||" getrennt in zwei teile: $line[0] und $line[1] (array; $line (als string wird hier überschrieben).




    Alle Klarheiten beseitigt? :D
    Ansosnten anchfragen!
    Die Japaner glauben jetzt auch, sie könnten den Superrechner verkaufen. Das wäre
    so, als würde man einen Jumbo-Jet nehmen, vorne und hinten die Spitzen absägen,
    davon 10 Stück zusammenschweißen und als ultimativen Super-Jet verkaufen.
  • "GFXShorty" schrieb:

    also das der ganze php code in meine google.txt oder zensur.php kommt

    erstmal: gern geschehen! :D

    Aber in die google.txt sollte eig kein phpcode rein, oder? das funzt dann doch shcon wieder net... ^^
    Die Japaner glauben jetzt auch, sie könnten den Superrechner verkaufen. Das wäre
    so, als würde man einen Jumbo-Jet nehmen, vorne und hinten die Spitzen absägen,
    davon 10 Stück zusammenschweißen und als ultimativen Super-Jet verkaufen.