Email-Adresse in Ascii-Code umrechnen?

pc-freak

Mitglied
Ich wollte um PHP zu lernen ein Formular machen, das eine eingegebene E-Mail-Adresse automatisch in einen ASCII-Code umrechnet. Ich habe aber verschiedene Probleme. z.B. weiss ich nicht, wie man die in einem Textfeld eingegebenen Daten an ein anderes sendet. Und vor allem nicht, wie man einzelne Zeichen durch andere ersetzt. Ich bin auch nicht gerade ein HTML-Genie. Kann mir bitte jemand helfen? Danke.
 
Hoi PC-Freak,

QUOTE das eine eingegebene E-Mail-Adresse automatisch in einen ASCII-Code umrechnet

Kannst du mir ein beispiel geben?


QUOTE weiss ich nicht, wie man die in einem Textfeld eingegebenen Daten an ein anderes sendet


willst du das machen ohne eine abfrage an den server zu senden oder mit? Für die erste ist javascript nötig da kannst du einfach eine variable definieren und an der 2te feld geben. Die 2te variante geht mit PHP ganz einfach.
----------- JS ---------------------------
x = document.form.textfield_1.value
document.form.textfiel_2.value = x
------------------------------------------
------------ PHP ------------------------
$x = $_POST['textfield_1'] or $_GET['textfield_2'] (je nach dem, ist post oder get?)
<input name="textfield_2" value="<? echo $x?>">
------------------------------------------


QUOTE Wie man einzelne Zeichen durch andere ersetzt

Ich würde dich regular expressions vorschlagen, leider ist das nicht so einfach ;)
http://www.webreference.com/js/column5/
http://www.regular-expressions.info/ (Die beste seite für RegEX)

Gruss
- Steven
 
Hoi zämä

Ich hab mir schon einmal etwas zusammengedichtet. Da ich in PHP völliger Anfänger bin, ist es logisch, dass es nicht funktioniert. Ich habe es in einer Datei versucht. Die sieht folgendermassen aus:
CODE <body><html>
<form name="form1" method="get" action="<?php echo $PHP_SELF;?>">
<input type="text" name="email">
<input name="Send" type="submit" value="senden">

<?php
$email = str_replace("A", "&#65", $email);
$email .= str_replace("B", "&#66", $email);
$email .= str_replace("C", "&#67", $email);
$email .= str_replace("D", "&#68", $email);
$email .= str_replace("E", "&#69", $email);
$email .= str_replace("F", "&#70", $email);
$email .= str_replace("G", "&#71", $email);
$email .= str_replace("H", "&#72", $email);
$email .= str_replace("I", "&#73", $email);
$email .= str_replace("J", "&#74", $email);
$email .= str_replace("K", "&#75", $email);
$email .= str_replace("L", "&#76", $email);
$email .= str_replace("M", "&#77", $email);
$email .= str_replace("N", "&#78", $email);
$email .= str_replace("O", "&#79", $email);
$email .= str_replace("P", "&#80", $email);
$email .= str_replace("Q", "&#81", $email);
$email .= str_replace("R", "&#82", $email);
$email .= str_replace("S", "&#83", $email);
$email .= str_replace("T", "&#84", $email);
$email .= str_replace("U", "&#85", $email);
$email .= str_replace("V", "&#86", $email);
$email .= str_replace("W", "&#87", $email);
$email .= str_replace("X", "&#88", $email);
$email .= str_replace("Y", "&#89", $email);
$email .= str_replace("Z", "&#90", $email);
?>


<input type="text" name="verschluesselt" value="<?php echo $email; ?>">
</form>
</body></html>


ich weiss, dass etwas nicht stimmt, aber nicht was. Das bis jetzt habe ich auch noch aus anderen Foren zusammengesucht.
 
$email .= str_replace("C", "&#67", $email);
$email .= str_replace("D", "&#68", $email);
$email .= str_replace("E", "&#69", $email);

Nimmt die pünktli weg.

$email = str_replace("C", "&#67", $email);
$email = str_replace("D", "&#68", $email);
$email = str_replace("E", "&#69", $email);

Gruss
- Steven
 
Probiers mal so:
CODE <HTML>
<HEAD>
<TITLE> Unicode </TITLE>
</HEAD>

<BODY>

<?php
echo "<FORM ACTION=$PHP_SELF METHOD=post>";
?>
Mail-Adresse:<BR><INPUT TYPE="text" NAME="Adress" SIZE="40"><BR><BR>Link-Text:<BR><INPUT TYPE="text" NAME="text" SIZE="40"><BR><INPUT TYPE="submit" NAME="submit" VALUE="Unicode generieren"></FORM>
<?php
if ($submit)
{
function a($Ascii_Mail, $Unicode)
{
$Uni_Mail = "";
$Temp_Mail = strval($Ascii_Mail);
for ($i = 0; $i < strlen($Ascii_Mail); $i++)
{
$Ascii_Wert = ord($Temp_Mail[$i]);
if ($Unicode == "Yes") $Uni_Mail .= "&#$Ascii_Wert;";
else $Uni_Mail .= "&#$Ascii_Wert;";
}
return $Uni_Mail;
}
if ($text == $Adress) $text1 = a($Adress, "Yes");
else $text1 = $text;
if ($text == $Adress) $text2 = a($Adress, "No");
else $text2 = $text;
?>
Mailadresse in Unicode:<BR><FORM><TEXTAREA COLS="40" ROWS="6">
<?php
echo "<A HREF=mailto:".a($Adress, "Yes").">$text1</A>";
?>
</TEXTAREA></FORM><BR>Vorschau:<BR>
<?php
echo "<A HREF=mailto:".a($Adress, "No").">$text2</A>";
}
?>
</BODY>
</HTML>


Hamlet
 
Ich stehe nicht auf lange codes, deshalb...

CODE <body><html>
<form name="form1" method="get" action="<?php echo $PHP_SELF;?>">
<input type="text" name="email">
<input name="Send" type="submit" value="senden">

<?php

$email = $_GET['email'];

$bigArray = array('A','B','C','D','E','F','G','H','I','J','K','L','M',
'N','0','P','Q','R','S','T','U','V','W','X','Y','Z');
$asciiArray = 65;

for ($i=0;$i<26;$i++) {
$email = str_replace($bigArray[$i], '&#'.$asciiArray, $email);
$asciiArray = $asciiArray + 1;
}

?>


<input type="text" name="verschluesselt" value="<?php echo $email; ?>">
</form>
</body></html>
 
Merci für die schnelle Hilfe. Das Beispiel von SwizZZ hat zwar die mails nicht verschlüsselt, dafür funktioniert das Beispiel von Hamlet umso besser. Danke.

Tschüss zämä.
cool.gif
 
bei mir nicht einmal mit denen. es gibt nur die buchstaben im textfeld aus, ohne sie zu verschlüsseln. Aber das andere funktioniert wenigstens
 
QUOTE bei mir nicht einmal mit denen. es gibt nur die buchstaben im textfeld aus, ohne sie zu verschlüsseln.


schau mal das html source...
 
Der Code von Swizz war cool. Er kann halt nur Grossbuchstaben, aber er funzt.
Mein Code kann alles, dafür ist er länger.
Macht keinen Streit jetzt, das lohnt nicht.
Lest den Quelltxt und lernt.
biggrin.gif
 
Zurück
Oben