Hiyo~
dies ist mein erster Post hier (nur'n Sidenote )
also ich habe hier ein großes Problem mit einem Stück PHP Code. Mein Kollege (der sich besser mit PHP auskennt als ich) ist auch schon am verzweifeln. Also hier das Problemkind:
Er findet in der Problemzeile keine Übereinstimmung und gibt somit nichts aus.
Wir haben schon alle möglichen Tests angestellt... aber es kam nie etwas bei rum.
Wenn man die Zeile "manuell" (also ohne variabeln) eingibt:
Dann funktioniert es...
Aber da ich 78 Emoticons in Ordner habe (und das Skript der Allgemeinheit dienen soll, die vielleicht 200 Emoticons hat) müsste ich diese "manuelle" Zeile 78 (oder halt 200 mal) eingeben.
Also entweder sehen wir den Wald vor lauter Bäumen nicht oder irgendwie is da was faul.
Ich hoffe mir wird hier geholfen.
dies ist mein erster Post hier (nur'n Sidenote )
also ich habe hier ein großes Problem mit einem Stück PHP Code. Mein Kollege (der sich besser mit PHP auskennt als ich) ist auch schon am verzweifeln. Also hier das Problemkind:
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Emoticon</title>
<script language="JavaScript">
var onoff = 0;
function mysmilie(textfeldid, smilie)
{
var field = document.getElementById(textfeldid);
field.value = field.value + smilie;
field.focus();
}
function show()
{
var table = document.getElementById('emoticons');
var button = document.getElementById('button');
if(onoff == 0)
{
table.style.display='block';
onoff = 1;
button.value="Hide emoticons";
}else{
table.style.display='none';
onoff = 0;
button.value="Show emoticons";
}
}
</script>
<style type="text/css">
#emoticons {
height:auto;
width:auto;
background:none;
display:none;
}
img {
border:none;
}
</style>
</head>
<body>
<form action="emoticons.php" method="post">
<textarea cols="50" rows="5" name="text" id="text"></textarea>
<input type="submit" name="send" value="Lol xD" />
<input type="button" id="button" value="Show emoticons" onclick="show()" />
<table id="emoticons">
<tr>
<?php
$i = 0;
foreach (glob('emoticons/*.*') as $emopath)
{
$emoticon = str_replace('emoticons/','',$emopath);
$type=explode(".",$emoticon);
if($i==10)
{
echo '</tr><tr>
<td>
<a href="javascript:mysmilie(\'text\',\':'.$type[0].':\')"><img src="'.$emopath.'" /></a>
</td>';
$emoarray1[] = ':'.$type[0].':';
$emoarray2[] = '<img src="'.$emopath.'" />';
$i = 1;
}else{
echo '<td>
<a href="javascript:mysmilie(\'text\',\':'.$type[0].':\')"><img src="'.$emopath.'" /></a>
</td>';
$emoarray1[] = ':'.$type[0].':';
$emoarray2[] = '<img src="'.$emopath.'" />';
$i++;
}
}
count($emoarray1);
?>
</tr>
</table>
</form>
<?php
if(isset($_POST['send']) || $_POST['text']!='')
{
$text = $_POST['text'];
$i2 = count($emoarray1);
$i3 = 0;
while($i3 < $i2)
{
$new_text = str_replace($emoarray1[$i3],$emoarray2[$i3], $text); // PROBLEMZEILE!
$i3++;
}
echo $new_text;
} else {
echo 'Bitte Text eingeben';
}
?>
</body>
</html>
Er findet in der Problemzeile keine Übereinstimmung und gibt somit nichts aus.
Wir haben schon alle möglichen Tests angestellt... aber es kam nie etwas bei rum.
Wenn man die Zeile "manuell" (also ohne variabeln) eingibt:
PHP:
$new_text = str_replace(:brb:,<img src="emoticons/brb.png" />, $text);
Dann funktioniert es...
Aber da ich 78 Emoticons in Ordner habe (und das Skript der Allgemeinheit dienen soll, die vielleicht 200 Emoticons hat) müsste ich diese "manuelle" Zeile 78 (oder halt 200 mal) eingeben.
Also entweder sehen wir den Wald vor lauter Bäumen nicht oder irgendwie is da was faul.
Ich hoffe mir wird hier geholfen.
Zuletzt bearbeitet: