SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 04.09.2003, 11:50:27
olbman olbman ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 6
Warum funktioniert submit nicht?

Hallo!

Folgendes prob: ich habe hier ein formular und unten per javascript den befehl "javascript:document.emailform.submit()". allerdings reloaded er das formular immer wieder, anstatt es abzuschicken. wenn ich stattdessen einen button einbaue, wie folgt:
<input type="Submit" name="submit" value="Formular abschicken">,
dann funktioniert es ohne probleme. hat jemand von euch ne idee, bzw. lösung?

<?

$HTTP_GET_VARS["link"];

$baseURL = "http://www.xxx.de";
$subject = "Weiterempfehlung";

// Overrides GPC variables if magic_quotes is turned on
if (get_magic_quotes_gpc()) {
for (reset($HTTP_GET_VARS); list($k, $v) = each($HTTP_GET_VARS); )
$$k = stripslashes($v);
for (reset($HTTP_POST_VARS); list($k, $v) = each($HTTP_POST_VARS); )
$$k = stripslashes($v);
for (reset($HTTP_COOKIE_VARS); list($k, $v) = each($HTTP_COOKIE_VARS); )
$$k = stripslashes($v);
}

if (!$submit) {

echo "<body bgcolor="#059965">
<form name="emailform" action="" method="post">
<input type="hidden" value="$link" name="link">
<center>
<table border="0" cellpadding="0" cellspacing="2" width="378">
<tr>
<td width="160"><font color="white" face="Verdana" size="2">Name Empfänger:</font> <font size="2" color="black">*</font></td>
<td width="198"><input type="Text" name="txtFriendName" size="25" maxlength="40" value=""></td>
</tr>
<tr>
<td width="160"><font color="white" face="Verdana" size="2">E-Mail Empfänger:</font> <font size="2" color="black">*</font></td>
<td width="198"><input type="Text" name="txtFriendEmail" size="25" maxlength="40" value=""></td>
</tr>
<tr>
<td width="160"><font color="white" face="Verdana" size="2">Ihr Name:</font> <font size="2" color="black">*</font></td>
<td width="198"><input type="Text" name="txtName" size="25" maxlength="40" value=""></td>
</tr>
<tr>
<td width="160"><font color="white" face="Verdana" size="2">Ihre E-Mail-Adresse:</font> <font size="2" color="black">*</font></td>
<td width="198"><input type="Text" name="txtEmail" size="25" maxlength="40" value=""></td>
</tr>
<tr>
<td width="160" valign="top"><font color="white" face="Verdana" size="2">Ihre persönliche Mitteilung:</font></td>
<td width="198"><Textarea name="txtComments" cols="21" rows="5" value=""></textarea></td>
</tr>
<tr>
<td width="160"><a href="javascript:document.emailform.submit()"><font color="white" face="Verdana" size="2"><b>Formular abschicken</b></font></a></td>
<td width="198"><a href="javascript:document.emailform.reset()"><font color="white" face="Verdana" size="2"><b>Formular zurücksetzen</b></font></a></td>
</tr>
<tr>
<td colspan="2"></td>
</tr>
<tr>
<td colspan="2"><font face="Verdana" size="1" color="white">Die mit</font> <font color="black">*</font> <font color="white" face="Verdana" size="1">gekennzeichneten Felder müssen ausgefüllt werden.</font></td>
</tr>
</table>
</center>
</form>
";

}

else {
if (!preg_match ("/[w-]+@[w-]+.[w-]+/", $txtEmail)) {
$strBadInput = "Your e-mail address is invalid";
}
elseif (!preg_match ("/[w-]+@[w-]+.[w-]+/", $txtFriendEmail)) {
$strBadInput = "The recipient e-mail address is invalid.";
}
elseif (!preg_match ("/[A-Z]/i", $txtName)) {
$strBadInput = "You must supply your name.";
}
elseif (!preg_match ("/[A-Z]/i", $txtFriendName)) {
$strBadInput = "You must supply your friend's name.";
}
if ($strBadInput) {?>
<?
header("Location: http://www.xxx.de");
?>
<?
}
else {
$url = $link;
$strBody = "n$txtName hat uns gebeten, Ihnen diese Empfehlung zu schicken.nnMit freundlichen GrüssennnIhr Team von xxxnn------------------------------------------------------------nn";
$strBody .= "Persönliche Mitteilung:nnHallo $txtFriendName,nn$txtCommentsnnEinfach diesen Link anklicken: $url.";
mail("$txtFriendName <$txtFriendEmail>",$subject,$strBody,"From:$txtName <$txtEmail>");?>
<?
header("Location: http://www.xxx.de");
?>
<?
}
}
?>

Schonmal besten dank!

olbman
Mit Zitat antworten
  #2  
Alt 04.09.2003, 11:55:00
Ben20
Guest
 
Beiträge: n/a
Versuchs mal mit

Code:
javascript:document.emailform.submit();
statt


Code:
java script:document.emailform.submit() // ohne Leerzeichen zwischen java und script

edit:

Mist, das ist ein Bug im Forum, ich vermute mal das Leerzeichen ist gar nicht drin - sorry


Geändert von Ben20 (04.09.2003 um 11:59:19 Uhr)
Mit Zitat antworten
  #3  
Alt 04.09.2003, 12:05:23
olbman olbman ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 6
Also javascript ist bei mir ein wort, ansonsten funktioniert es auch nicht. mhhhh :-(

hat es vielleicht etwas mit dem befehl "submit" zu tun, gibt es da noch andere möglichkeiten?

olbman
Mit Zitat antworten
  #4  
Alt 04.09.2003, 12:12:40
Ben20
Guest
 
Beiträge: n/a
Hast Du es so schon versucht

Code:
<a href="#" onClick="javascript:document.emailform.submit(); return false;">
Mit Zitat antworten
  #5  
Alt 04.09.2003, 12:20:26
olbman olbman ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 6
hat leider den gleichen effekt......

kann es sein, das es probleme mit


if (!$submit)

gibt? gibt es unterschiede zwischen groß- und kleinschreibung?
denn beim button habe ich ein "Submit", also großgeschrieben.

olbman
Mit Zitat antworten
  #6  
Alt 04.09.2003, 12:25:03
Ben20
Guest
 
Beiträge: n/a
Ach, das hatte ich ja ganz übersehen. Hast Du PHP > 4.1.x dann musst statt $submit $_POST["submit"] verwenden. Dazu noch folgendes:


Zitat:
Mit Version 4.1 wurde in PHP ein neues Sicherheitskonzept eingeführt, welches seit Version 4.2 standardmäßig aktiviert ist. Seit dem muss man alle übergebenen Variablen mit
$_GET['variable'] - für Urlparameter
$_POST['variable'] - für mit method=post versendete Parameter
$_REQUEST['variable'] - $_POST und $_GET zusammen $_COOKIE['variable'] - für Cookies
$_FILES['variable'] - für hochgeladene Dateien $_SERVER['variable'] - für Servervariablen (z.B. PHP_SELF) $_ENV['variable'] - für Umgebungsvariablen ansprechen. Also ehemals $str mit $_GET['str'] Oder Du setzt in der php.ini register_globals (o.ä.) auf on. Davon rate ich aber ab.

(c) c4 - based upon Originalpost von Ben20
Mit Zitat antworten
  #7  
Alt 04.09.2003, 12:30:31
olbman olbman ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 6
kannst du mir die zeile mal gesamt geben?

wo genau muss ich das "$_POST["submit"] " einbauen?

olbman
Mit Zitat antworten
  #8  
Alt 04.09.2003, 12:32:30
Ben20
Guest
 
Beiträge: n/a
Du musst $_POST["submit"] überall da einsetzen wo Du $submit hast!

PHP-Code:

//vorher

if (!$submit) {


//nachher

if(!$_POST["submit"]) 

Geändert von Ben20 (04.09.2003 um 12:54:59 Uhr)
Mit Zitat antworten
  #9  
Alt 04.09.2003, 12:42:13
olbman olbman ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 6
immer noch der gleiche mist..... :-(

was ist denn bitte der unterschied zwischen einem button und so einem blöden javascript-befehl??? im grunde genommen wird doch das gleiche ausgeführt.
Mit Zitat antworten
  #10  
Alt 04.09.2003, 15:41:41
Trialrider Trialrider ist offline
Anfänger
 
Registriert seit: May 2003
Ort: Oschatz/Sa.
Beiträge: 124
Hi Leutz,

hatte selbes Problem:

Probier(t) mal:
PHP-Code:
eval("document.form_name.submit()"); 
Bei mir hats so gefunzt...

Gruß, Trialrider
__________________
Yesterdays, Todays, Tomorrows - Kicking off your sorrows!
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:44:32 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt