'document.formular.message' ist Null oder kein Objekt - Warum ?

MarcNeedsHelp

Grünschnabel
Hallo,

habe hier folgenden Code:

Code:
<?php
include_once('config_inc.php');
include_once('functions.php');

head($info,$title);
?>
<script language="javascript">
<!--
function setsmiley(text) {
var temp = eval("document.formular.message");
text = ' ' + text + ' ';
if (temp.createTextRange && temp.caretPos) {
var caretPos = temp.caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
temp.focus();
} else {
temp.value += text;
}
}
function storeCaret(textEl) {
if(textEl.createTextRange) textEl.caretPos = document.selection.createRange().duplicate();
}
//-->
</script>
<form enctype="multipart/form-data" action="save_it.php" method="post">
Deine Nachricht: <br>
<TEXTAREA  name="message" rows="15" cols="50" wrap="VIRTUAL" align="left"></TEXTAREA>
<table border="1">
<tr><th>Dein Name:</th><th> <input type="text" size="40" maxlength="40" name="name"></tr>
<tr><th>Deine E-MAIL: </th><th><input type="text" size="40" maxlength="40" name="email"></th></tr>
<tr><th>Deine Homepage: </th><th><input type="text" size="40" maxlength="40" name="homepage"></th></tr>
</table>
<br>
<INPUT TYPE="SUBMIT" name="sende" align="absbottom">
&nbsp;<input type="reset">
<?php
echo "<br><br><table border=1 style=\"border-collapse: collapse\"><tr>";
echo "<td width=18><a href=\"javascript:setsmiley(';-)')\"><img src=\"".$bverzeichnis."wink.gif\" border=0 alt=';-)'></a></td>";
echo "<td width=18><a href=\"javascript:setsmiley(':-)')\"><img src=\"".$bverzeichnis."smile.gif\" border=0 alt=':-)'></a></td>";
echo "<td width=18><a href=\"javascript:setsmiley(':-(')\"><img src=\"".$bverzeichnis."cry.gif\" border=0 alt=':-('></a></td>";
echo "<td width=18><a href=\"javascript:setsmiley(':roll:')\"><img src=\"".$bverzeichnis."roll.gif\" border=0 alt=':roll:'></a></td>";
echo "<td width=18><a href=\"javascript:setsmiley(':rock:')\"><img src=\"".$bverzeichnis."rock.gif\" border=0 alt=':rock:'</a></td>";
echo "<td width=18><a href=\"javascript:setsmiley(':eek:')\"><img src=\"".$bverzeichnis."eek.gif\" border=0 alt=':eek:'</a></td>";
echo "<td width=18><a href=\"javascript:setsmiley(':zunge:')\"><img src=\"".$bverzeichnis."zunge.gif\" border=0 alt=':zunge:'</a></td>";
echo "</tr><tr>";
echo "<td>;-)</td><td>:-)</td><td>:-(</td><td>:roll:</td><td>:rock:</td><td>:eek:</td><td>:zunge:</td></tr></table>";
?>
</FORM>
<?php
echo "<a href=\"javascript:history.back()\" class=extlink>back</a>.</p>";
feet();
?>
Der ganze Sinn soll sein, das wenn ich auf die Smileys klicke, er im Textfeld diesen Smiley anzeigt. Aber leider funktioniert das nicht. Es erscheint immer die im Betreff genannte Fehlermeldung.
Hat Jemand ne Ahnung?
Kenne mich mit JavaScript leider überhaupt nicht aus... :(

Bin für jeden Tipp dankbar.

Gruss
Marcus
 
var temp = eval("document.formular.message");
Uh?

Verzeihung, aber der PHP-Teil ist Schwachsinn!

Für was eine ganze Zeile unnötig per PHP ausgeben, wenn man doch einfach
nur die Variable ausgeben muss?
PHP:
<html code><?php echo $variable; ?></htmlcode>

Geb deinem Forumlar, wie Sebastion schon gesagt hat, einen Namen und mach
es dann so:
PHP:
sTmpVar = window.document['TextForm']['InputName'].value;

[...]

<form name="TextForm" method="post" action="ziel.php">
    <input type="text" name="InputName">
</form>

Und ps: Die langen Codezeilen sind unschön!

Und hast du vielleicht ne Erklärung fpr den Sinn dieser zwei Zeilen?
PHP:
<?php
echo "<a href=\"java script:history.back()\" class=extlink>back</a>.</p>";
feet();
?>
 
Zuletzt bearbeitet von einem Moderator:
Hey Ihr zwei,

vielen Dank für den Hinweis wegen des Formular-Namens.
Hab es so eingefügt wie Du (Fabian) mir das vorgegeben hast und es funktioniert jetzt bestens.
Welchen Sinn welche Codezeilen haben kann ich Dir nicht sagen.
Es handelt sich hierbei um ein Gästebuchskript, welches ich irgendwo runtergeladen habe und zum testen mal einrichten wollte.
Wenn Du interesse an dem kompletten Skript hast, kannst Du es Dir ja mal runterladen.

Gruss
Marcus
 

Anhänge

Neue Beiträge

Zurück