In Gästebuchscript Smiliefunktion einfügen

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

  • In Gästebuchscript Smiliefunktion einfügen

    Hallo, will in das Gästebuch von unserm Jugendraum Smilies integrieren.
    Hab schon einiges Probiert, aber da ich fast keine Ahnung hab von PHP schaff ich das ganze nicht.

    Hier mal der Quelltext:
    PHP-Code:
       // User parameter
       
    $table_name       "guestbook";                // Name der Tabelle fuer Gaestebuch
       
    $mysql_server     "localhost";                // Name Datenbankserver
       
    $mysql_user_name  "*****";                    // Username fuer Datenbankzugriff
       
    $mysql_user_pass  "******";                 // Passwort fuer Datenbankzugriff
       
    $mysql_dbname     "*******";              // Datenbankname
       
    $param_title      "Gästebuch Jugendraum Heidenheim";      // Titlebar text

       
    $entries_per_page 30;                         // Abzahl Eintraege pro Seite

       
    $link mysql_connect($mysql_server$mysql_user_name$mysql_user_pass) or 
          die(
    "Fatal error: Could not connect to database."); 

       
    mysql_select_db("$mysql_dbname") or 
           die(
    "Fatal error: Could not select database.");

       
    $action $_REQUEST['action'];
       if (!isset(
    $action))
          
    $action 0
    PHP-Code:
       if ($action == 0)
       {
          
    // Gaestebuch Default-Ansicht 
    PHP-Code:
       $result mysql_query("show tables");

       if (!
    $result)
       {
          echo 
    "Fatal error: Could not list tables.\n";
          exit;
       }

       
    $found false;
       while (
    $row mysql_fetch_array($result))
       {
          if (
    strcmp($row[0], $table_name) == 0)
             
    $found true;
       }

       
    $page $_REQUEST['page'];
       if (!isset(
    $page))
          
    $page 1;

       if (!
    $found)
          
    mysql_query("create table $table_name (id integer auto_increment primary key, 

    name varchar(255), email varchar(255), remark text)"
    );


       
    $result mysql_query("select * from $table_name order by id desc limit 1");

      
     if ((
    $row mysql_fetch_array($result)) !== false)
       {
          
    $num_pages = (int)($row['id'] / $entries_per_page) + 1;
          if (
    $page $num_pages)
             
    $page $num_pages;

          if (
    $page 1)
             
    $page 1;

          
    $start_id $row['id'] - (($page 1) * $entries_per_page);
          
    $end_id $start_id $entries_per_page 1;
          if (
    $end_id 0
             
    $end_id 0;

          
    mysql_free_result($result);


          echo 
    "<tr><td colspan=\"2\">Eintr&auml;ge mit Msg-ID $start_id...$end_id</td></tr>";

          
    $result mysql_query("select * from $table_name where (id <= $start_id) and (id >= $end_id) order by id desc");

          while (
    $row mysql_fetch_array($result))
          {
             echo 
    "<tr><td bgcolor=\"#000066\" colspan=\"2\"><a href=\"mailto:" $row['email'] . "\"><font color=\"#00ffff\">
    <b>" 
    $row['name'] . "</b></font></a><font size=\"1\"> [" $row['entry_date'] . " | " $row['entry_time'] . 
    " | Msg-ID " $row['id'] . " ]
    </font></p></td></tr>"
    ;
             echo 
    "<tr><td colspan=\"2\"><table width=\"100%\"><tr><td width=\"20\"></td><td>" 
    $row['remark'] . "<br><br></td></tr></table></td></tr>";
          }

          
    mysql_free_result($result);

          echo 
    "<tr><td align=\"center\" colspan=\"2\"><b>";
          for (
    $i 1$i <= $num_pages$i++)
          {
             if (
    $i == $page)
                echo 
    " [$i] ";
             else
                echo 
    "<a href=\"guestbook.php?page=$i\">&nbsp;$i&nbsp;</a>";

             if ((
    $i 20) == 19)
                echo 
    "<br>";
          }
          echo 
    "</b></td></tr>";
       }

       echo 
    "</table>";



    }
    else
    {
       
    $name $_REQUEST['name'];
       
    $email $_REQUEST['email'];
       
    $remark $_REQUEST['remark'];

       if ((
    strlen($name) > 0) &&
           (
    strlen($email) > 0) &&
           (
    strlen($remark) > 0) &&
           (
    strpos($remark"http://") === false))
       {
          
    mysql_query("insert $table_name set name=\"$name\", email=\"$email\", 
    remark=\"
    $remark\", entry_date=curdate(), entry_time=curtime()");

          echo 
    "<h4>Eintrag wurde hinzugef&uuml;gt:</h5>";
          echo 
    "<p><dl><dt><b>Name:</b></dt><dd>$name</dd><dt><b>E-

    Mail:</b></dt><dd>
    $email</dd><dt><b>Nachricht:</b></dt><dd>$remark</dd></dl></p><br><br>";
          echo 
    "<p>[ <a href=\"guestbook.php\">Zur&uuml;ck zum G&auml;stebuch</a> ]</p>";
       }
       else
       {
          echo 
    "<h4>Eintrag ung&uuml;ltig!</h4>";
          echo 
    "<p>[ <a href=\"guestbook.php\">Zur&uuml;ck zum G&auml;stebuch</a> ]</p>";
       }
    }

    mysql_close($link); 
    bis etz schaut des GB so aus: www.jugendraum-heidenheim.de/guestbook.php

    Hab versucht die Smiles irgendwie mit einem der beiden Codeschnipsel einzufügen:
    PHP-Code:
    // Beginn der Arrays    
    $search = array(':cool:',':super:');    
    $replace = array('<img src="cool.gif" alt=":cool:" />',
    '<img src="super.gif" alt=":super:" />');    
    // Ende der Arrays    

    while       
    $text str_replace($search$replace$row['remark']); // text replacen 
    PHP-Code:
    function smilies($remark
        { 
            
    $remark str_replace(':cool:',"<img src=\"cool.gif\">"$remark); 
            
    $remark str_replace(":cool:","<img src=\"cool.gif\"> "$remark); 
            
            
            return 
    $remark
        } 
    ich weis allerdings nicht wo ich den Code einfügen soll, hab rumprobiert, aber nix zustande gebracht

    mfg Karl
    Zuletzt geändert von kla_kal; 08.05.2007, 20:43.

  • #2
    http://www.php-resource.de/forum/sho...threadid=50454

    Kommentar


    • #3
      Hab mir die "Regeln" vorher schon durchglesen!
      Ich den vollständigen Code ja nur gepostet das Ihr mir sagen könnt wo ich nen Codeschnipsel einfügen muss das des funktioniert.

      mfg Karl

      Kommentar


      • #4
        ich habe keinen 30-zöller von apple, auf dem dein code bestimmt mega-elegant aussieht. muss ich mich trotzdem durchquälen?

        und die gesamte html-ausgabe ist absolut unwichtig für dein anliegen.
        Zuletzt geändert von penizillin; 08.05.2007, 20:23.

        Kommentar


        • #5
          1. du sollst zuerst den code umbrechen. selbst ich mit einer auflösung 1600x1200 scrolle nicht horizontal.
          2. poste nur den relevanten code. dein css-anweisungen interessieren hier nicht.

          gruß
          peter
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Kommentar


          • #6
            Code editiert

            Also hab den Code etz mal gebrochen!
            Währe echt super wenn mir jemand von euch helfen könnte!

            mfg Karl

            Kommentar


            • #7
              schon besser. an der stelle, an der du $row['remark'] ausgibst, könntest du die ersetzung durchführen.

              d.h. diese variable mal durch str_replace() mit den smily-arrays durchjagen.

              Kommentar


              • #8
                Sorry, hab festgestellt das meine Kentnisse praktisch null sind. könntest du bitte sagen ob vor oder nach dem $row... oder danach. und wie genau muss ich des schreiben? sorry, bin halt so! will aber php noch unbedingt lernen

                mfg karl

                Kommentar


                • #9
                  sorry, bin halt so! will aber php noch unbedingt lernen
                  Dann würde ich dir vorschlagen, dir als erstes PHP reinzupfeifen, weil wenn du erst einmal anfängst, wird es immer schwerer richtig mit dem Lernen anzufangen!

                  Kommentar


                  • #10
                    ersetze mal diese variable (ich nenn sie mal $x) durch
                    PHP-Code:
                    str_replace('a''ABC'$x
                    und schaue, was mit dem text an dieser stelle passiert.

                    Kommentar


                    • #11
                      Würd ja gern PHP anfangen, aber ein Monat vor den Abschlussprüfungen is des ganze a weng schlecht
                      Des Gästebuch sollt halt davor mit Smilies gehn.

                      mfg

                      Kommentar


                      • #12
                        aber ein Monat vor den Abschlussprüfungen is des ganze a weng schlecht
                        OffTopic:
                        dann musst du prioritäten setzen. entweder abschlussprüfung oder php


                        peter
                        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                        Meine Seite

                        Kommentar

                        Lädt...
                        X