php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 04.08.2004, 15:34  
Gast
 
Beiträge: n/a
Standard [Erledigt] Aktuelle Url an Formular übergeben

Hallo an alle,

leider kenne ich mich noch nicht gut mit PHP aus. Versuche seit 2 Tagen mein Problem durch Lesen der Beiträge zu lösen, bin aber leider keinen Schritt weiter gekommen.

Jetzt erstmal kurz beschrieben was ich machen möchte. Bestimmte Besucher die auf meine Seite kommen haben eine ID in der URL. (z.b. http://www.meine-domain.de?id=0815)
Über die Seite wird ein HTML Formular im neuem Fenster aufgerufen das per PHP verarbeitet wird. Nun muß ich es irgendwie hinkriegen das die ID bzw. die URL + ID mit dem Formular per Email also über PHP gesendet wird. Nur wie mache ich das?

Zur Zeit versuche ich das mit einem hidden-input-Feld im Formular.

Also so etwa:

Code:
<?php
echo "<input type='hidden' name='id' value='".$_POST['id']."'>";
?>
Aber es funktioniert nicht. Warscheinlich habe ich nur einen dummen Fehler gemacht. Hier mal der komplette Code vom Formular:

Code:
<form action="formular4.php" <?=$mm_form_attributes ?>>
          Pflichtfelder sind mit einem <font color="#FF0000">*</font> 
          gekennzeichnet. 

           
          <table border="0" cellspacing="0" cellpadding="2">
            <tr valign="top"> 
              <td>Vorname<font color="#FF0000">*</font></td>
              <td> <input name="vorname" type="text" id="vorname" size="20"> <input name="mm_case" type="hidden" id="mm_case" value="proof"> 
                <input name="mm_form_vars" type="hidden" id="mm_form_vars" value="vorname,name,strasse,nr,plz,ort,email,telefon,menge,message,id"></td>
            </tr>
            <tr valign="top"> 
              <td>Name<font color="#FF0000">*</font></td>
              <td> <input name="name" type="text" id="name" size="20"></td>
            </tr>
            <tr valign="top"> 
              <td height="10">[img]../img/test_form_blank.gif[/img]</td>
              <td>[img]../img/test_form_blank.gif[/img]</td>
            </tr>
            <tr valign="top"> 
              <td>Straße, N<font color="#000000">r</font><font color="#FF0000">*</font></td>
              <td><input name="strasse" type="text" id="strasse" size="20"> <input name="nr" type="text" id="nr" size="5"></td>
            </tr>
            <tr valign="top"> 
              <td>PLZ, Ort<font color="#FF0000">*</font>:</td>
              <td><input name="plz" type="text" id="plz" size="5" maxlength="5"> 
                <input name="ort" type="text" id="ort" size="20"></td>
            </tr>
            <tr valign="top"> 
              <td height="10">[img]../img/test_form_blank.gif[/img]</td>
              <td>[img]../img/test_form_blank.gif[/img]</td>
            </tr>
            <tr valign="top"> 
              <td>eMail<font color="#FF0000">*</font></td>
              <td> <input name="email" type="text" id="email" size="20"></td>
            </tr>
            <tr valign="top"> 
              <td>Telefon<font color="#FF0000"></font>:</td>
              <td> <input name="telefon" type="text" id="telefon" size="20"></td>
            </tr>
            <tr valign="top"> 
              <td height="10">[img]../img/test_form_blank.gif[/img]</td>
              <td>[img]../img/test_form_blank.gif[/img]</td>
            </tr>
            <tr valign="top"> 
              <td>Nachricht:</td>
              <td> <textarea name="message" cols="50" rows="5" wrap="PHYSICAL" id="message">Design Nr.:
Zusatzleistung:
</textarea></td>
            </tr>
            <tr valign="top"> 
              <td>
<?php
echo "<input type='hidden' name='id' value='".$_POST['id']."'>";
?>
</td>
              <td><div align="right"> 
                  <input type="submit" name="Submit" value="Abschicken">
                </div></td>
            </tr>
          </table>
</form>
Und hier der Teil vom PHP Script was mir per Email gesendet wird:

Code:
=====================   FORM-DATA   ==========================
Persönliche Daten:
$vorname $name

Adresse:
$strasse $nr
$plz $ort
Die eMail-Adresse lautet $email
Telefon (optional): $telefon

Es wurde folgende Nachricht angegeben:
--------------------------------------------------------------
$message\n
--------------------------------------------------------------
ID: $_POST['id']


====================   END OF DATA   =========================\n
\n
";
Tja, das Wort ID wird mir per Mail gesendet, nur leider ohne Wert. Was mache ich nur falsch?
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 04.08.2004, 15:35  
Gast
 
Beiträge: n/a
Standard

Du musst $_GET['id'] statt $_POST['id'] verwenden. Alles was über die Adresse mitgegeben wird, muss mit $_GET abgerufen werden.
 
Alt 04.08.2004, 15:39  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von maxi
Du musst $_GET['id'] statt $_POST['id'] verwenden. Alles was über die Adresse mitgegeben wird, muss mit $_GET abgerufen werden.
Ach sorry, hatte ich vergessen zu sagen. Ich habe beides, also mit GET und POST ausprobiert. Wie gesagt leider nicht mit dem richtigen Ergebnis.

Übrigens Danke für die wirklich sehr schnelle Antwort.
 
Alt 04.08.2004, 15:45  
Gast
 
Beiträge: n/a
Standard

1.) Würde ich den ganzen Mail-Text in einer Variable speichern.
2.) Weiß nicht obs daran liegt, aber schreib das Input-Feld mal so:
PHP-Code:
echo '<input type="hidden" name="id" value="'.$_GET['id'].'">'
 
Alt 04.08.2004, 15:54  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von maxi
1.) Würde ich den ganzen Mail-Text in einer Variable speichern.
2.) Weiß nicht obs daran liegt, aber schreib das Input-Feld mal so:
PHP-Code:
echo '<input type="hidden" name="id" value="'.$_GET['id'].'">'
Danke für die Antwort. Ich habs gerade ausprobiert. Leider funktioniert es nicht. Gibt es denn noch andere Möglichkeiten?
 
Alt 04.08.2004, 15:59  
Gast
 
Beiträge: n/a
Standard

Was mir noch aufgefallen ist, was steht denn in der Variable $mm_form_attributes drin? Wenn dort nicht method="post" drin steht, dann kann das ganze garnicht funktionieren, da dein Script garnicht weiß, ob es die Daten per GET oder POST empfangen soll.
Was noch wichtig wäre, wie äußert sich denn der Fehler? Wird die Mail abgeschickt und nach "ID" ist einfach nichts? Oder wird die Mail erst garnicht abgeschickt?
 
Alt 04.08.2004, 16:12  
Gast
 
Beiträge: n/a
Standard

Hallo,

$mm_javascript steht auf GET. Aber hier jetzt mal der gesamte Code der PHP Datei. Vielleicht steht da noch eine Sache drin an die ich noch gar nicht gedacht habe:

Code:
<?php
/*
      **********************************************************************
      *                                                                    *
      *                     The Matrix Crew                                *
      *                     http://www.tmc2000.de                          *
      *                     Downloaded @                                   *
      *                     http://magicmail.tmc2000.de                    *
      *                     Mail: info@tmc2000.de                          *
      *                                                                    *
      **********************************************************************

 **                       MagicMail                                              **
 **                       LIGHT-VERSION       Mail: info@tmc2000.de              **
 **                       Developer: Lars Jendrzejewski  [Magic]                 **
 **                       Mail: Bitte nutzt das Support-Form, das extra          **
 **                       unter http://magicmail.tmc2000.de                      **
 **                       angelegt wurde !!                                      **
 **                       copyright 2002 by TMC                                  **
 **                                                                              **
 **                       Contributor:                                           **
 **                       Mail:                                                  **

 *
 * @version v3.00, 27.06.2003
 * Formmailer
 * Das Script darf auch kommerziell genutzt werden.
 * Das Script darf angepasst werden.
 * Die Kopzeilen bis Zeile 30 dürfen bis auf "Contributor" (Dein Name) und
 * "Mail" (Deine eMail-Adresse) nicht geändert werden.
 */


/***************    Session-Handling   ****************/
@session_start();
if (!@session_is_registered("mm_form_referer"))	{
	@session_register("mm_form_referer","mm_reloadsperre","mm_reloadtime");
}


/***************    Includes und Standard-Variablen   ****************/
## (Keine Änderung nötig)
include ("func.o.inc.php");


/***************    Angabe der Grunddaten (bitte anpassen)   ****************/
## Mail-Daten (bitte anpassen).
$mm_name = "##########";					/*****   Empfängername    *****/
$mm_adresse = "##########";			/*****   Empfängeradresse *****/
$mm_von = "##########";/*****   Absenderadresse  *****/
$mm_betreff = "##########";	/*****   Betreffzeile     *****/

## Upload-File? Mögliche Werte: JA|NEIN (bitte anpassen) Datei muss mm_file heissen.
$mm_file_upload = 'NEIN';					/*****   Datei über Form?   *****/

## Soll der Absender-Host ins Mail geschrieben werden (verzögerter Mailversand) ?
## Mögliche Werte: JA|NEIN (bitte anpassen)
$mm_get_host = 'Nein';

## Welche Seite soll nach erfolgreichem Mailing aufgerufen werden? (bitte anpassen).
$mm_welldone_page = "danke.html";			/*****   Danke-Seite   *****/

## Geben Sie an, ob andere Formulare (ggf. Spammer) Ihren Mailer benutzen dürfen.
## Bei NEIN Achtung: Man kann den Mailer dann nur benutzen, wenn Session-Cookies aktiv sind
## (Aktive Session-Cookies ist eine Standard-Einstellung - auch bei aktivierter Firewall)
## Mögliche Werte: JA|NEIN
$mm_referer_check = 'JA';				/*****   Referer-Check  *****/

## Geben Sie an, wie lange es dauern soll, bis das Formular vom selben User wiederverwendet
## werden darf (Wert in Sekunden).
$mm_my_reloadtime = 60;					/*****   Reloadsperre *****/

## Reply-To (Keine Änderung nötig)
$mm_to = "$vorname $name <$email>";			/*****   Antwort-Mailadresse        *****/


/***************    Prüfen der Inhalte     ****************/
## Geben Sie an, welche Felder wie geprüft werden sollen.
## Mögliche Prüffunktionen sind @pflichtfeld('Feld','Stopmessage'), @email('Feld','Stopmessage')
## und @datei(Max. Grösse des Dateiuploads in KB); Beachten Sie das Manual für weitere Funktionen.
## ACHTUNG: Stopmessages müssen wegen Javascript in EINER Zeile stehen (Umbruch: \\n ).
## Prüffunktionen:

	@pflichtfeld('vorname','Bitte geben Sie Ihren Vornamen an.');
	@pflichtfeld('name','Bitte geben Sie Ihren Namen an.');
	@pflichtfeld('strasse','Bitte geben Sie Ihre Strasse an.');
	@pflichtfeld('nr','Bitte geben Sie Ihre Nr. an.');
	@pflichtfeld('plz','Bitte geben Sie Ihre PLZ an.');
	@pflichtfeld('ort','Bitte geben Sie Ihren Ort an.');
	@pflichtfeld('email','Bitte geben Sie Ihre eMail-Adresse an.');
	@email('email','Bitte geben Sie eine gültige eMail-Adresse an.');
	


/***************    Mailinhalt (Format)   ****************/
## Soll die eMail als HTML-Mail generiert werden? Wenn JA bitte NICHT </body>,</html> an den
## Schluss setzen (wird automatisch mit eingefügt).
## Mögliche Werte: JA|NEIN
$mm_html_mail = 'NEIN';

## Wenn die eMail als HTML generiert wird, können Sie hier das HTML-eMail schreiben.
## Verwenden Sie hier die Felder aus dem Formular als PHP-Variable
$mm_message_html = "<html><body>Hallo.
 <h1>$name hat das Formular benutzt</H1>
...";

## Der Inhalt folgender Variable enthält das Mailformat für nicht HTML-fähige eMail-Clienten und
## bei der Einstellung $mm_html_mail = 'NEIN'
## Zeilenumbrüche macht man so: \n
$mm_message_text = "##########\" \n

=====================   FORM-DATA   ==========================
Persönliche Daten:
$vorname $name

Adresse:
$strasse $nr
$plz $ort
Die eMail-Adresse lautet $email
Telefon (optional): $telefon

Es wurde folgende Nachricht angegeben:
--------------------------------------------------------------
$message\n
--------------------------------------------------------------
ID: $_GET['id']


====================   END OF DATA   =========================\n
\n
";


/***************    Bestätigungsmail   ****************/
## Bestätigungs-Mail? Mögliche Werte: JA|NEIN (bitte anpassen).
$mm_bestatigung = 'JA';
$mm_bestatigung_von = "##########";	/*****   Absenderadresse  *****/
$mm_bestatigung_betreff = "##########";		/*****   Betreffzeile  *****/
## Soll die Bestätigungs-Mail als HTML-Mail generiert werden? Wenn JA bitte NICHT </body>,</html> an den
## Schluss setzen (wird automatisch mit eingefügt).
## Mögliche Werte: JA|NEIN
$mm_html_bestatigung = 'NEIN';

## Der Inhalt der folgenden Variable steht im Bestätigungsmail
$mm_bestatigung_form = "Hallo $vorname $name.
Ihre Anfrage ist angekommen und wird schnellstmöglichst bearbeitet.\n\n
Mit freundlichen Grüßen";


###############
#########################
###################################
#############################################

  #########     ##           ##      ########
  #########     ###         ###     #########
     ##         ####       ####     ##
     ##         ## ##     ## ##     ##
     ##         ##  ##   ##  ##     ##
     ##         ##   #####   ##     #########
     ##         ##    ###    ##      ########

#############################################
###################################
#########################
###############


## Am besten ab hier nichts ändern.
/***************    Session-Handling   ****************/
if ($mm_case != 'proof')	{
	$mm_form_referer = 'MAGICMAIL';
	@session_register('mm_form_referer');
}
if ($mm_case == 'proof' AND $mm_form_referer != "MAGICMAIL" AND $mm_referer_check == "NEIN")	{
	$mm_case_override = "NEIN";
	mm_referer("Sie sind nicht berechtigt,\\nMagicMail zu nutzen! Dies kann daran liegen, dass Ihr Browser \\n keine Cookies unterstützt.");
}


/***************    Reloadsperre    ****************/
if ($mm_reloadsperre == 'ON')	{
	$mm_try = mktime();
	$mm_catch = $mm_try - $mm_reloadtime;
	if($mm_catch <= $mm_my_reloadtime)	{
		$mm_time = $mm_my_reloadtime - $mm_catch;
		$mm_case_override = "NEIN";
	reloadsperre($mm_time);
	}
}

if ($mm_case == 'proof' AND $mm_case_override != "NEIN")		{
	$mm_an = "$mm_name <$mm_adresse>";
	if ($mm_get_host == 'JA')	{
		$mm_host =	gethostbyaddr($mm_remote_addr);
		$mm_host_compl = "Absenderhost: $mm_host\n";
	}


/***************    HTML-Mails    ****************/
	if ($mm_html_mail == 'JA')	{
		$mm_content_type = "Content-Type: text/html; ";
		$mm_html_endbody = "</body></html>";

	}
	else	{
		$mm_content_type = "Content-Type: text/plain; ";
	}

	if ($mm_html_bestatigung == 'JA')	{
		$mm_content_type2 = "Content-Type: text/html; ";
		$mm_html_endbody2 = "</body></html>";
	}
	else	{
		$mm_content_type2 = "Content-Type: text/plain; ";
	}
	$mm_full_content_header2 = "MIME-Version: 1.0\n"."$mm_content_type2"."Charset=\"ISO-8859-1\" \nContent-Transfer-Encoding: 7bit\n";

	if (is_uploaded_file($mm_file2['tmp_name']))	{
		$return_file =	email_attach();
		$mm_header1 = "From: $mm_von\nReply-To: $mm_to\n". $return_file[headerdatei] ;
		$mm_message = $return_file[messagedatei];
	}
	else	{
		if ($mm_html_mail == 'JA')	{
			$semi_rand = md5(time());
			$mime_boundary1 = "=Boundary_PART01_x{$semi_rand}x";

			$mm_full_content_header = "MIME-Version: 1.0\n".
				"X-Mailer: MagicMail JS -light-\n".
				"Content-Type: multipart/alternative; ".
				"boundary=\"{$mime_boundary1}\"\n\n";

			$mm_full_message = "This is a multi-part message in MIME format.\n\n" .
				"--{$mime_boundary1}\n".
				"Content-Type: text/plain;".
				" charset=\"ISO-8859-1\" \n".
				"Content-Transfer-Encoding: 7bit\n" .
				$mm_message_text . $mm_host_compl .
				"\n\n".
				"--{$mime_boundary1}\n" .
				"Content-Type: text/html;".
				" charset=\"iso-8859-1\"\n" .
				"Content-Transfer-Encoding: 7bit\n\n" .
				$mm_message_html . $mm_host_compl . $mm_html_endbody .
				"\n\n".
				"--{$mime_boundary1}--\n\n";
			$mm_header1 = "From: $mm_von\nReply-To: $mm_to\n$mm_full_content_header";
			$mm_message = "$mm_full_message";
		}
		else	{
			$mm_full_content_header ="Content-Type: text/plain;".
				" charset=\"ISO-8859-1\" \n".
				"Content-Transfer-Encoding: 7bit\n";
			$mm_header1 = "From: $mm_von\nReply-To: $mm_to\n$mm_full_content_header";
			$mm_message = $mm_message_text . $mm_host_compl;
		}
	}

	mail("$mm_an", "$mm_betreff","$mm_message","$mm_header1")or die("Das Mail wurde nicht gesendet. Wenden Sie sich an den Webmaster unter <a href=mailto:info@meinhost.de>Operator</a>.");

	if (!empty($email) AND $mm_bestatigung == 'JA')	{
		$mm_header2 = "From: $mm_bestatigung_von\nReply-To: $mm_bestatigung_von\nX-Mailer:MagicMail JS -light-\n$mm_full_content_header2";
		$mm_message_bestatigung = "$mm_bestatigung_form"."$mm_html_endbody2";
		mail("$email", "$mm_bestatigung_betreff", "$mm_message_bestatigung", "$mm_header2");
	}

	$mm_reloadsperre =	'ON';
	@session_register(mm_reloadsperre);
	$mm_reloadtime = mktime();
	@session_register(mm_reloadtime) ;
	$next_header = header ("Location: $mm_welldone_page");  // Umleitung des Browsers
}

/***************    Javascript-Errorhandling   ****************/
$mm_javascript="<script type=\"text/javascript\">\n
			<!-- \n
			$mm_js_reloadsperre \n
			$mm_js_referer \n
			function chkFormular() \n
			{ \n
			$mm_js_formcheck \n} \n
			//--> \n
			</script> \n";
if ($mm_file_upload == 'JA')	{
	$mm_form_attributes = "method=\"get\" enctype=\"multipart/form-data\" name=\"magicmail_form\" id=\"magicmail_form\" onSubmit=\"return chkFormular()\"";
}
else	{
	$mm_form_attributes = "method=\"get\" enctype=\"application/x-www-form-urlencoded\" name=\"magicmail_form\" id=\"magicmail_form\" onSubmit=\"return chkFormular()\"";
	}


?>
Die Email kommt ganz normal an und alle Daten ausser eben die ID werden übermittelt. Wäre natürlich Super wenn jemand einen Tipp hätte.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP: Formular Generator Zergling-new Tutorials 16 06.07.2010 03:14
Ergebnis von Formular in iFrame zeigen PsychoEagle HTML, Usability und Barrierefreiheit 2 22.07.2009 21:07
Wert aus Textfeld in neues Formular übernehmen (kein Submit) PsychoEagle HTML, Usability und Barrierefreiheit 9 02.01.2007 14:51
formular an mehrere email-empfänger katarzyna PHP Tipps 2006 2 22.08.2006 07:42
formular includen samspa5 PHP Tipps 2006 13 18.03.2006 11:37
[Erledigt] Formular in Formular HTML, Usability und Barrierefreiheit 4 19.10.2005 12:18
[Erledigt] PHP Formular ~~wichtig~~ PHP Tipps 2005 27 29.05.2005 19:38
Im Formular user abfragen? Datenbanken 3 06.01.2005 10:51
[Erledigt] PHP Formular - Daten an nächsten Schritt weiter geben - Wie? PHP Tipps 2005 14 02.01.2005 20:05
Formular nach UPDATE anzeigen PHP Tipps 2004-2 5 22.12.2004 02:06
[Erledigt] Daten in einem Formular ausgeben und ändern PHP Tipps 2004-2 7 07.12.2004 17:22
Wie implementiere ich mein Email Formular? PHP Tipps 2004-2 2 14.11.2004 17:02
Brauche PHP Formular Beitragsarchiv 9 16.08.2004 16:23
[Erledigt] Formular mit Daten werden auf anderer Seite zusammengefasst PHP Tipps 2004 4 15.08.2004 15:44
[Erledigt] Daten in neuem Formular anzeigen PHP Tipps 2004 6 21.07.2004 10:44

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php aktuelle url, html aktuelle url, http://www.php.de/php-tipps-2004/6299-erledigt-aktuelle-url-formular-uebergeben.html, lars jendrzejewski, php aktuelle url übergeben, www.tmc2000.de, php url der aktuellen seite, php aktuelle url per formular ausgeben, sie sind nicht berechtigt magicmail zu nutzen, php formular wird nicht gesendet, formular url id, http://magicmail.tmc2000.de, mailto aktuelle url, php aktuelle url in textfeld ausgeben, aktuelle url html email, aktuelle url in mailto übergeben, aktuelle url php, form zu aktuelle url führen, php aktuelle url formular, url in formular mitgeben

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:51 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.