Inputwert sofort verwenden...

DaveThuet

Erfahrenes Mitglied
Guten Morgen,

ich habe ein Problem das ich nicht gebacken bekomme. :(
Mein Vorhaben ist folgender, bin aber nicht sicher ob es in JS oder eher in PHP reingehört!

Ich möchte in ein Formular den eingetippten Wert eines Inputfelds sofort verwenden um einen Link daraus zu machen. Es werden seitens Besucher ID-Nummern eingetippt, also reine Zahlen. Daraus möchte ich dann einen Link zum eigentlich Bild machen, wie lässt sich sowas realisieren?

Es geht um doppelte Bilder die mir via Formular mitgeteilt werden seitens Besucher/Mitglieder. Diese Meldungen erhalte ich dann per Email zugesandt. Die erste ID-Nummer wird per PHP bereits ausgelesen aber bei der zweiten die der Besucher eintippt komme ich nicht weiter...

Bisher habe ich folgendes:
HTML:
<form method="post" action="senddoppelte.php" onSubmit="return checkKontaktForm(this)">
<table border="0" cellpadding="5" align="center" width="300">
	<tr> 
		<td valign="top"><strong>Ihr Name oder Benutzername:</strong><br />
		<input type="text" name="User-Name" class="eing" size="30" /></td>
	</tr>
	<tr> 
		<td valign="top"><strong>Ihre Email-Adresse:</strong><br />
		<input type="text" name="User-Email" class="eing" size="30" /></td>
	</tr>
    <tr>
        <td valign="top"><strong>ID-Nummer vom ersten Wallpaper:</strong><br />
		<input type="text" name="Wallpaper1" class="eing" size="30" value="<?php echo $_GET['id'];?>" readonly="readonly" /> 
        <input type="hidden" name="Wallpaper1a" class="eing" value="http://www.hd-wallpaper-area.com/?page=wallpaper&id=<?php echo $_GET['id']; ?>" /></td>
    </tr>
    <tr> 
        <td valign="top"><strong>ID-Nummer vom doppelten Wallpaper:</strong><br />
        <input type="text" name="Wallpaper2" id="Wallpaper2" class="eing" size="30" /><br />
        <span class="klein">In der URL <em>(Adressleiste des Browsers)</em> ersichtlich:<br />www.hd-wallpaper-area.com/index.php?page=wallpaper&id=&quot;</span><span class="kleinred">ID-Nummer</span><span class="klein">&quot;</span>
 		<input type="hidden" name="Wallpaper2a" value="http://www.hd-wallpaper-area.com/?page=wallpaper&id=<?php ; ?>" /></td>
	</tr>
    <tr> 
		<td colspan="3"> <strong>Optionale Nachricht am Administrator:</strong><br />
        <textarea name="Nachricht" cols="45" rows="8" class="multifeld1"></textarea></td>
	</tr>
    <tr> 
		<td colspan="3"><div align="center"><input type="submit" name="Senden" value="Doppelte Wallpapers melden..."></div></td>
	</tr>
</table>
</form>

Die Datei "senddoppelte.php":
PHP:
<?php

### Konfiguration ###

# Bitte passen Sie die folgenden Werte an, bevor Sie das Script benutzen!

# An welche Adresse sollen die Mails gesendet werden?
$strEmpfaenger = 'XXX@XXX';

# Welche Adresse soll als Absender angegeben werden?
# (Manche Hoster lassen diese Angabe vor dem Versenden der Mail ueberschreiben)
$strFrom = "From: " . $_POST['User-Email'] . "\n";
$strFrom .= "X-Sender: <XXX@XXX>\n";
$strFrom .= "X-Mailer: PHP\n";
$strFrom .= "X-Priority: 3\n";
$strFrom .= "Errors-To: <XXX@XXX>\n";
$strFrom .= "Return-Path: <XXX@XXX>\n";
$strFrom .= "Reply-To: " . $_POST['User-Email'] . "\n";
$strFrom .= "Content-Type: text; charset=iso-8859-15\n";

# Welchen Betreff sollen die Mails erhalten?
$strSubject    = 'HD Wallpaper Area -> Doppelte Wallpapers';

# Zu welcher Seite soll als "Danke-Seite" weitergeleitet werden?
# Wichtig: Sie muessen hier eine gueltige HTTP-Adresse angeben!
$strReturnhtml = 'doppelte_ok.php';

# Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
$strDelimiter  = ":\t";

### Ende Konfiguration ###

if($_POST)
{
 $strMailtext = "";

 while(list($strName,$value) = each($_POST))
 {
  if(is_array($value))
  {
   foreach($value as $value_array)
   {
    $strMailtext .= $strName.$strDelimiter.$value_array."\n";
   }
  }
  else
  {
   $strMailtext .= $strName.$strDelimiter.$value."\n";
  }
 }

 if(get_magic_quotes_gpc())
 {
  $strMailtext = stripslashes($strMailtext);
 }

 mail($strEmpfaenger, $strSubject, $strMailtext, $strFrom)
  or die("Die Mail konnte nicht versendet werden.");
 header("Location: $strReturnhtml");
 exit;
}

?>
Ich wäre Euch wirklich sehr dankbar für jegliche Hilfe da ich bereits einige Stunden mit Recherchen im Netz nach einer Lösung suche, leider ohne Erfolg. Ich habe es bereits mit einigen PHP-Codes wie "$_GET["Wallpaper2"];" oder mit "$_POST["Wallpaper2"];" aber wie gesagt klappt dies nicht da PHP ja den Wert beim laden der Seite noch nicht auslesen kann da noch keine Eingabe stattgefunden hat für das doppelte Bild. :(
 
Gruezi,

Wozu brauchst du da den Wert sofort, verwendet wird er doch erst im PHP-Skript:eek:

Du musst da an der Stelle, wo du den Mailtext zusammenschnippelst nur gucken ob das aktuelle Feld Wallpaper2 ist, und falls ja, setze die URL zusammen.

ca so:
alt:
Code:
else
  {
   $strMailtext .= $strName.$strDelimiter.$value."\n";
  }

neu:
Code:
else
  {
   $strMailtext .= $strName.$strDelimiter.
                  (
                    ($strName=='Wallpaper2')
                      ?('http://www.hd-wallpaper-area.com/?page=wallpaper&id='
                        .filter_var(trim($value), 
                                    FILTER_VALIDATE_INT))
                      :$value)."\n";
  }
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück