Wieso wird die Funktion nicht aufgerufen
Birgit
- javascript
Hallo,
ich bin total am verzweifeln. Ich habe eine Formular, das vor dem Absenden überprüft werden soll. Aber die Funktion wird gar nicht erst aufgerufen. Woran könnte es liegen? Hier der Quellcode:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD>
<?php // Datenbankverbindung require("../connect.php");
// IP-Adresse des Besuchers $UserIP = $REMOTE_ADDR;
// Auslesen aller Produkte aus der Datenbank, die zur ausgewaehlten Kategorie gehoeren $ProduktAnfrage = "SELECT SID, ArtNummer, ArtName, ArtBeschreib, Preis, Image FROM produkte WHERE KSID='$kategorie'"; $ProduktErgebnis = mysql_query($ProduktAnfrage) or die ("Fehler bei der Anfrage: ". $ProduktAnfrage);
$Counter = 0; // Alle Daten der Produkte einem Array zuweisen while ($ProduktAnzeig = mysql_fetch_row($ProduktErgebnis)) { if (!isset($ProduktNr)) { // Wenn noch kein Produkt ausgewaehlt wurde, soll das erste genommen werden $ProduktNr = 0; } $Artikel[$Counter]["SID"] = $ProduktAnzeig[0]; $Artikel[$Counter]["Nummer"] = $ProduktAnzeig[1]; $Artikel[$Counter]["ArtName"] = $ProduktAnzeig[2]; $Artikel[$Counter]["Beschreib"] = $ProduktAnzeig[3]; $Artikel[$Counter]["Preis"] = $ProduktAnzeig[4]; $Artikel[$Counter]["Bild"] = $ProduktAnzeig[5]; $Counter++; }
$BestellArtikel = $Artikel[$ProduktNr]["SID"]; $BestelltAnfrage = "SELECT * FROM warenkorb WHERE IP='$UserIP' AND Bestellt='N' AND PSID='$BestellArtikel'"; $BestelltErgebnis = mysql_query($BestelltAnfrage) or die ("Fehler bei der Anfrage: ". $BestelltAnfrage);
if ($anzeigen = mysql_fetch_row($BestelltErgebnis)) { $Bestellt = True; } else { $Bestellt = False; }
$Bestellt = True;
echo "<TITLE>Produkte</TITLE>";
echo "<link href="../standard.css" rel="stylesheet" type="text/css" title="stylesheet">";
echo "<script type="text/javascript" language="JavaScript">"; echo "<!--"; echo "function check()"; echo "{"; /if ($Bestellt == true) { //echo "var bestaetigen;"; echo "bestaetigen = confirm("Möchten Sie diese dazulegen?");"; echo "if (bestaetigen == false)"; echo "{"; echo "return false;"; echo "exit;"; echo "}"; echo "else"; echo "{"; echo "document.Warenkorb.submit();"; echo "}"; }/ echo "alert('hallo');"; echo "return false;"; echo "}";
echo "//-->"; echo "</script>";
echo "<BASE TARGET="_parent">"; echo "</HEAD>"; echo "<BODY BACKGROUND="../assets/images/Background.gif">"; //echo $BestelltAnfrage;
// Formular fuer den Warenkorb echo "<FORM NAME="Warenkorb" action="../warenkorbeintrag.php?ProduktNr=$ProduktNr&kategorie=$kategorie&Bestellt=$Bestellt" METHOD="post" target="_self" onSubmit="return check()">";
// Aeussere Tabelle zur Ausrichtung echo "<TABLE BORDER="0" CELLSPACING="5" CELLPADDING="0" WIDTH="541">";
echo "<TR VALIGN="TOP" ALIGN="LEFT">"; echo "<TD WIDTH="7" HEIGHT="6"><IMG SRC="../assets/images/autogen/clearpixel.gif" WIDTH=7 HEIGHT=1 BORDER=0 ALT=""></TD>"; echo "<TD><IMG SRC="../assets/images/autogen/clearpixel.gif" HEIGHT="1" BORDER="0" ALT=""></TD>"; echo "</TR>"; echo "<TR VALIGN="TOP" ALIGN="LEFT">"; echo "<TD COLSPAN="2">";
$ProduktAnzahl = count($Artikel);
// Uebersicht der einzelnen Produkte der Kategorie als Links ausgeben echo "Die Produktpalette für diese Kategorie: ";
for ($Counter = 0; $Counter < $ProduktAnzahl; $Counter++) { echo "<a href="body_produkte.php?kategorie=$kategorie&ProduktNr=$Counter" target="_self">". $Artikel[$Counter]["ArtName"] ."</a> "; }
echo "</TD>"; echo "</TR>"; echo "<TR>"; echo "<TD COLSPAN="2">"; echo "<H3 ALIGN="center">". $Artikel[$ProduktNr]["ArtName"]. "</H3>"; echo "</TD>"; echo "</TR>"; echo "<TR VALIGN="TOP" ALIGN="LEFT">"; echo "<TD>"; echo "<img src="../assets/images/".$Artikel[$ProduktNr]["Bild"]."" align="left">";
echo "</TD>"; echo "<TD>";
// Tabelle fuer Warbenkorb echo "<table border="0" cellspacing="2" cellpadding="0">";
echo "<tr>"; echo "<td valign="top">"; echo "<b>Artikelnummer:</b> "; echo "<td>"; echo $Artikel[$ProduktNr]["Nummer"]; echo "</td>"; echo "<tr>"; echo "<td valign="top">"; echo "<b>Artikelbeschreibung:</b> "; echo "</td>"; echo "<td>"; echo $Artikel[$ProduktNr]["Beschreib"]; echo "</td>"; echo "</tr>"; echo "<tr>"; echo "<td valign="top">"; echo "<b>Preis:</b> "; echo "</td>"; echo "<td>"; echo $Artikel[$ProduktNr]["Preis"]." â¬"; echo "</td>"; echo "</tr>"; echo "<tr>"; echo "<td colspan="2" height="50" align="right">"; echo "<table border="0">"; echo "<tr>"; echo "<td valign="bottom">"; echo "<input type="hidden" name="PSID" value="" .$Artikel[$ProduktNr]["SID"]. "">"; echo "<input type="text" name="Anzahl" size="4"> "; echo "</td>"; echo "<td valign="top">"; echo "<input type="submit" value="In den Warenkorb legen">"; //echo "<a href="javascript:check()" target="_self" onClick="return check()"><img src="../assets/images/buy.gif" border="0" alt="Waren in den Warenkorb legen" valign="middle"></a>"; echo "</td>"; echo "</tr>"; echo "</table>"; echo "</td>"; echo "</tr>";
echo "</table>"; echo "</TD>";
echo "</TR>";
echo "</TABLE>"; echo "</FORM>";
echo "</BODY>"; echo "</HTML>"; ?>
Wäre lieb, wenn mir jemand helfen könnte.
Gruß,
Birgit
Hi,
ich bin total am verzweifeln. Ich habe eine Formular, das vor dem Absenden überprüft werden soll. Aber die Funktion wird gar nicht erst aufgerufen. Woran könnte es liegen? Hier der Quellcode:
Und warum listest Du hier das php-Script auf, wenn es um Javascript geht?
Bitte gib nur den relevanten Code an - das ist der entscheidende Ausschnitt aus dem, was der Browser kriegt (nicht, was am Server interpretiert wird).
Ich wühl mich doch nicht durch zig Zeilen irrelevanten Code.
cu,
Andreas
Und warum listest Du hier das php-Script auf, wenn es um Javascript geht?
Bitte gib nur den relevanten Code an - das ist der entscheidende Ausschnitt aus dem, was der Browser kriegt (nicht, was am Server interpretiert wird).
Ich wühl mich doch nicht durch zig Zeilen irrelevanten Code.cu,
Andreas
Das blöde ist ja, wenn ich nur das relevante nehme, dann funktioniert das alles. Kann es sein, daß vielleicht irgendwie Tags fehlen? Ich habe alles schon so oft durchgeguckt.
Gruß
Birgit
Moin!
Das blöde ist ja, wenn ich nur das relevante nehme, dann funktioniert das alles. Kann es sein, daß vielleicht irgendwie Tags fehlen? Ich habe alles schon so oft durchgeguckt.
Aha, das ist ein interessanter Hinweis.
Wenn du wissen willst, ob dein generiertes HTML in Ordnung ist, dann lasse es validieren! http://validator.w3.org zeigt dir alle HTML-Fehler, die du eingebaut hast.
- Sven Rautenberg
Wenn ich die Kommentarbefehle (also "<!--" und "//-->") rausnehme, funktioniert es. Darf man das denn einfach weglassen?
Gruß
Birgit
hi,
Wenn ich die Kommentarbefehle (also "<!--" und "//-->") rausnehme, funktioniert es. Darf man das denn einfach weglassen?
wenn wir diese aussage mal mit dem von dir geposteten code
echo "<script type="text/javascript" language="JavaScript">";
echo "<!--";
echo "function check()";
echo "{";
/*if ($Bestellt == true)
{ ...
in verbindung bringen, fällt folgendes auf:
da du keinerlei \n (zeilenvorschübe) im echo verwendest, steht nachher alles in einer zeile.
also
<script type="text/javascript" language="JavaScript"><!--function check(){...
das <!--function check(){... korrekt funktioniert, glaube ich aber kaum.
also versuche mal, den code so auszugeben, dass da auch wirklich mehrere zeilen im html-quellcode stehen; dann sollte es m.e. funktionieren.
gruss,
wahsaga