• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

define Fehler?

Status
Für weitere Antworten geschlossen.

snake.logan

Neues Mitglied
Hallo ich wollte ein "ABC" Modul machen, aber etwas stimmt nicht. Die Dateien:

abc.inc.php
PHP:
<?php
###################################################################
#               Scriptname: ABC                                   #
#               Version   : 1.0                                   #
#               Copyright 2006                                    #
#                      by                                         #
#                Sören Wächter                                    #
#               Lizenz: Freeware                                  #
#                                                                 #
#                                                                 #
#             Diese Datei wird so eingebunden:                    #
#              <?php include("modul/abc/abc.inc.php"); ?>         #
#                                                                 #
###################################################################
$abc_dir     =     "images/1/";
$sm_dir      =     "smileys/";

/* AB HIER NICHTS MEHR ÄNDERN! */

define('_A_','<img src="$abc_dir/a.gif" border="0">');
define('_B_','<img src="$abc_dir/b.gif" border="0">');
define('_C_','<img src="$abc_dir/c.gif" border="0">');
define('_D_','<img src="$abc_dir/d.gif" border="0">');
define('_E_','<img src="$abc_dir/e.gif" border="0">');
define('_F_','<img src="$abc_dir/f.gif" border="0">');
define('_G_','<img src="$abc_dir/g.gif" border="0">');
define('_H_','<img src="$abc_dir/h.gif" border="0">');
define('_I_','<img src="$abc_dir/i.gif" border="0">');
define('_J_','<img src="$abc_dir/j.gif" border="0">');
define('_K_','<img src="$abc_dir/k.gif" border="0">');
define('_L_','<img src="$abc_dir/l.gif" border="0">');
define('_M_','<img src="$abc_dir/m.gif" border="0">');
define('_N_','<img src="$abc_dir/n.gif" border="0">');
define('_O_','<img src="$abc_dir/o.gif" border="0">');
define('_P_','<img src="$abc_dir/p.gif" border="0">');
define('_Q_','<img src="$abc_dir/q.gif" border="0">');
define('_R_','<img src="$abc_dir/r.gif" border="0">');
define('_S_','<img src="$abc_dir/s.gif" border="0">');
define('_T_','<img src="$abc_dir/t.gif" border="0">');
define('_U_','<img src="$abc_dir/u.gif" border="0">');
define('_V_','<img src="$abc_dir/v.gif" border="0">');
define('_W_','<img src="$abc_dir/w.gif" border="0">');
define('_X_','<img src="$abc_dir/x.gif" border="0">');
define('_Y_','<img src="$abc_dir/y.gif" border="0">');
define('_Z_','<img src="$abc_dir/z.gif" border="0">');

define(':lach:','<img src="$sm_dir/1.gif" border="0">');
define(':-|','<img src="$sm_dir/2.gif" border="0">');
define(':cry:','<img src="$sm_dir/3.gif" border="0">');
define(':ja:','<img src="$sm_dir/4.gif" border="0">');
define(':-(','<img src="$sm_dir/5.gif" border="0">');
define(';-)','<img src="$sm_dir/6.gif" border="0">');
define('x(','<img src="$sm_dir/7.gif" border="0">');
define('xD','<img src="$sm_dir/8.gif" border="0">');
define(':O','<img src="$sm_dir/9.gif" border="0">');
define(':denk:','<img src="$sm_dir/10.gif" border="0">');
define('xP','<img src="$sm_dir/11.gif" border="0">');
define(':cool:','<img src="$sm_dir/12.gif" border="0">');
define(':-)','<img src="$sm_dir/13.gif" border="0">');
define(':nein:','$sm_dir/14.gif" border="0">');
define(';)','<img src="$sm_dir/15.gif" border="0">');
define(':-P','<img src="$sm_dir/16.gif" border="0">');
?>

Ich weiß einfach nicht wo der Fehler liegt.

Danke im voraus!
Ich glaube so ist es richtig oder?:
PHP:
<?php
/*
###################################################################
#               Scriptname: ABC                                   #
#               Version   : 1.0                                   #
#               Copyright 2006                                    #
#                      by                                         #
#                Sören Wächter                                    #
#               Lizenz: Freeware                                  #
#                                                                 #
#                                                                 #
#             Diese Datei wird so eingebunden:                    #
#              <?php include("modul/abc/abc.inc.php"); ?>         #
#                                                                 #
###################################################################
*/
$abc_dir     =     "images/1/";
$sm_dir      =     "smileys/";

/* AB HIER NICHTS MEHR ÄNDERN! */

define('_A_','<img src="$abc_dir/a.gif" border="0">');
define('_B_','<img src="$abc_dir/b.gif" border="0">');
define('_C_','<img src="$abc_dir/c.gif" border="0">');
define('_D_','<img src="$abc_dir/d.gif" border="0">');
define('_E_','<img src="$abc_dir/e.gif" border="0">');
define('_F_','<img src="$abc_dir/f.gif" border="0">');
define('_G_','<img src="$abc_dir/g.gif" border="0">');
define('_H_','<img src="$abc_dir/h.gif" border="0">');
define('_I_','<img src="$abc_dir/i.gif" border="0">');
define('_J_','<img src="$abc_dir/j.gif" border="0">');
define('_K_','<img src="$abc_dir/k.gif" border="0">');
define('_L_','<img src="$abc_dir/l.gif" border="0">');
define('_M_','<img src="$abc_dir/m.gif" border="0">');
define('_N_','<img src="$abc_dir/n.gif" border="0">');
define('_O_','<img src="$abc_dir/o.gif" border="0">');
define('_P_','<img src="$abc_dir/p.gif" border="0">');
define('_Q_','<img src="$abc_dir/q.gif" border="0">');
define('_R_','<img src="$abc_dir/r.gif" border="0">');
define('_S_','<img src="$abc_dir/s.gif" border="0">');
define('_T_','<img src="$abc_dir/t.gif" border="0">');
define('_U_','<img src="$abc_dir/u.gif" border="0">');
define('_V_','<img src="$abc_dir/v.gif" border="0">');
define('_W_','<img src="$abc_dir/w.gif" border="0">');
define('_X_','<img src="$abc_dir/x.gif" border="0">');
define('_Y_','<img src="$abc_dir/y.gif" border="0">');
define('_Z_','<img src="$abc_dir/z.gif" border="0">');

define(':lach:','<img src="$sm_dir/1.gif" border="0">');
define(':-|','<img src="$sm_dir/2.gif" border="0">');
define(':cry:','<img src="$sm_dir/3.gif" border="0">');
define(':ja:','<img src="$sm_dir/4.gif" border="0">');
define(':-(','<img src="$sm_dir/5.gif" border="0">');
define(';-)','<img src="$sm_dir/6.gif" border="0">');
define('x(','<img src="$sm_dir/7.gif" border="0">');
define('xD','<img src="$sm_dir/8.gif" border="0">');
define(':O','<img src="$sm_dir/9.gif" border="0">');
define(':denk:','<img src="$sm_dir/10.gif" border="0">');
define('xP','<img src="$sm_dir/11.gif" border="0">');
define(':cool:','<img src="$sm_dir/12.gif" border="0">');
define(':-)','<img src="$sm_dir/13.gif" border="0">');
define(':nein:','$sm_dir/14.gif" border="0">');
define(';)','<img src="$sm_dir/15.gif" border="0">');
define(':-P','<img src="$sm_dir/16.gif" border="0">');
?>

test.php
PHP:
<?php
include("abc.inc.php");
?>
<html>

<head>
<meta http-equiv="Content-Language" content="de">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>ABC Test!</title>
</head>

<body>

<p>Smiley:</p>
<p>;)</p>
<p>:denk:</p>
<p>Alphabet:</p>
<p>_A_<br>
_B_<br>
_C_</p>

</body>

</html>
Er ersetzt die Codes nicht.
 
Werbung:
Werbung:
Sowas mit Konstanten ist sowieso Sschwachsinn.

Mach einen Array, in dem die Buchstaben/ Smileys stehen undn einen mit dem entsprechenden Ersatz dafür. Dann benutzt du [phpnet]str_replace[/phpnet]()

PHP:
$text = "...";
//Der Text, der umgewandelt werden soll
$text = str_replace($arrayMitSmileysUndBuchstaben, $arrayMitErsetzungen, $text);
Ist nicht getestet, sollte aber so klappen ;)
 
Nein. (Jedenfalls kenne ich keine andere Methode.)
Um einen String durch einen anderen zu ersetzten brauchst du einen RegEx. In der Form wäre das eben die str_replace(); Funktion. Ich denke auch nicht, dass es so schwer ist, das jetzt zu verändern.
Gruß
 
Werbung:
@commodore
sorry aber das geht nicht, denn php ersetzt nicht automatisch bei 2 Arrays die entsprechenden Werte, mann müsste es dann mit einer SChleife lösen und einer Zählervariable für den Index des Arrays :)
 
Werbung:
@commodore
sorry aber das geht nicht, denn php ersetzt nicht automatisch bei 2 Arrays die entsprechenden Werte, mann müsste es dann mit einer SChleife lösen und einer Zählervariable für den Index des Arrays :)
Oh doch php wird das sicher machen, informier dich mal genau!
Allerdings ist str_replace nicht gerade gut für smileys etc, dass kann zu Problemen bem ersetzten führen (in der url können andere smileys sein), deshalb sollte man strtr benutzen.
Verwendung von strtr will ich net auch noch erklärebn :p dazu findest ja genug auf php.net
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben