lucas72
16-12-2005, 21:35
Ciao
Tempo fa ho scaricato uno script che trasformava
le lettere inserite nel campo del modulo in
codice morse e viceversa.
<?php
$lettertomorse=array();
$lettertomorse["a"]=".-";
$lettertomorse["b"]="-...";
$lettertomorse["c"]="-.-.";
$lettertomorse["d"]="-..";
$lettertomorse["e"]=".";
$lettertomorse["f"]="..-.";
$lettertomorse["g"]="--.";
$lettertomorse["h"]="....";
$lettertomorse["i"]="..";
$lettertomorse["j"]=".---";
$lettertomorse["k"]=".-.";
$lettertomorse["l"]=".-..";
$lettertomorse["m"]="--";
$lettertomorse["n"]="-.";
$lettertomorse["o"]="---";
$lettertomorse["p"]=".--.";
$lettertomorse["q"]="--.-";
$lettertomorse["r"]=".-.";
$lettertomorse["s"]="...";
$lettertomorse["t"]="-";
$lettertomorse["u"]="..-";
$lettertomorse["v"]="...-";
$lettertomorse["w"]=".--";
$lettertomorse["x"]="-..-";
$lettertomorse["y"]="-.--";
$lettertomorse["z"]="--..";
$lettertomorse["1"]=".----";
$lettertomorse["2"]="..---";
$lettertomorse["3"]="...--";
$lettertomorse["4"]="....-";
$lettertomorse["5"]=".....";
$lettertomorse["6"]="-....";
$lettertomorse["7"]="--...";
$lettertomorse["8"]="---..";
$lettertomorse["9"]="----.";
$lettertomorse["0"]="-----";
$lettertomorse[" "]=" ";
$lettertomorse["."]=".-.-.-";
$lettertomorse[","]="--..--";
$lettertomorse["EOM"]=".-.-.";
$morsetoletter=array();
reset($lettertomorse);
while (list($letter,$code)=each($lettertomorse)) {
$morsetoletter[$code]=$letter;
}
function morse_encode($txt) {
global $lettertomorse;
$line="";
for ($i=0;$i<strlen($txt);$i++) {
$letter=substr($txt,$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line.=$lettertomorse[$letter]." ";
}
return $line;
}
function morse_decode($string) {
global $morsetoletter;
$line="";
$letters=array();
$letters=explode(" ",$string);
foreach ($letters as $letter) {
// ignore unknown characters
if ($letter=="") $line.=" ";
if ($morsetoletter[$letter]=="") continue;
$line.=$morsetoletter[$letter];
}
return $line;
}
?>
<h1>Morse transletter</h1>
<form method="post" action="<?php echo $PHP_SELF ?>">
Real life text: <input type="text" name="txt" value="<?php echo $txt?>" size=50>
<br>
Morse text: <input type="text" name="morse" value="<?php echo $morse?>" size=50>
<input type="submit" value="Convert">
<input type="reset">
<br>
<hr>
<?php
if ($morse!="") {
echo morse_decode($morse),"<br>\n";
}
if ($txt!="") {
echo morse_encode($txt),"<br>\n";
}
if ($txt!="") {
echo "<hr>\n<pre>";
$line1="";
$line2="";
for ($i=0;$i<strlen($txt);$i++) {
$letter=substr($txt,$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line1.=$lettertomorse[$letter]." ";
$line2.=$letter;
for ($j=0;$j<strlen($lettertomorse[$letter]);$j++)
$line2.=" ";
$size+=strlen($lettertomorse[$letter])+1;
if ($size>70) {
echo "$line1\n";
echo "$line2\n";
echo "\n";
$line1="";
$line2="";
$size=0;
}
}
echo "$line1\n";
echo "$line2\n";
echo "\n";
echo "\n</pre>\n";
}
?>
Poi ho aggiornato il php apache ecc ecc (easy php)
che porta di default register_global su off
e il codice di cui sopra non funziona più
Ho tentato di aggiornare il codice
inserendo i vari request
ma adesso addirittura non visualizzo più niente
Non riesco a capire dove è l'errore.
E' da un po di tempo che non metto mani su codice
php e html (mi sto dedicando alla grafica :-))
Potete aiutarmi, per piacere?
Questo è il codice da me modificato:
<?php
$lettertomorse=array();
$lettertomorse["a"]=".-";
$lettertomorse["b"]="-...";
$lettertomorse["c"]="-.-.";
$lettertomorse["d"]="-..";
$lettertomorse["e"]=".";
$lettertomorse["f"]="..-.";
$lettertomorse["g"]="--.";
$lettertomorse["h"]="....";
$lettertomorse["i"]="..";
$lettertomorse["j"]=".---";
$lettertomorse["k"]=".-.";
$lettertomorse["l"]=".-..";
$lettertomorse["m"]="--";
$lettertomorse["n"]="-.";
$lettertomorse["o"]="---";
$lettertomorse["p"]=".--.";
$lettertomorse["q"]="--.-";
$lettertomorse["r"]=".-.";
$lettertomorse["s"]="...";
$lettertomorse["t"]="-";
$lettertomorse["u"]="..-";
$lettertomorse["v"]="...-";
$lettertomorse["w"]=".--";
$lettertomorse["x"]="-..-";
$lettertomorse["y"]="-.--";
$lettertomorse["z"]="--..";
$lettertomorse["1"]=".----";
$lettertomorse["2"]="..---";
$lettertomorse["3"]="...--";
$lettertomorse["4"]="....-";
$lettertomorse["5"]=".....";
$lettertomorse["6"]="-....";
$lettertomorse["7"]="--...";
$lettertomorse["8"]="---..";
$lettertomorse["9"]="----.";
$lettertomorse["0"]="-----";
$lettertomorse[" "]=" ";
$lettertomorse["."]=".-.-.-";
$lettertomorse[","]="--..--";
$lettertomorse["EOM"]=".-.-.";
$morsetoletter=array();
reset($lettertomorse);
while (list($letter,$code)=each($lettertomorse)) {
$morsetoletter[$code]=$letter;
}
function morse_encode($_REQUEST['text']) {
global $lettertomorse;
$line="";
for ($i=0;$i<strlen($_REQUEST['text']);$i++) {
$letter=substr($_REQUEST['text'],$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line.=$lettertomorse[$letter]." ";
}
return $line;
}
function morse_decode($string) {
global $morsetoletter;
$line="";
$letters=array();
$letters=explode(" ",$string);
foreach ($letters as $letter) {
// ignore unknown characters
if ($letter=="") $line.=" ";
if ($morsetoletter[$letter]=="") continue;
$line.=$morsetoletter[$letter];
}
return $line;
}
?>
<h1>Morse transletter</h1>
<form method="post" action="<?php echo $PHP_SELF ?>">
Real life text: <input type="text" name="txt" value="<?php echo '".($_REQUEST['text'])."'?>" size=50>
<br>
Morse text: <input type="text" name="morse" value="<?php echo '".($_REQUEST['morse'])."'?>" size=50>
<input type="submit" value="Convert">
<input type="reset">
<br>
<hr>
<?php
if ($_REQUEST['morse']!="") {
echo morse_decode($_REQUEST['morse']),"<br>\n";
}
if ($_REQUEST['text']!="") {
echo morse_encode($_REQUEST['text']),"<br>\n";
}
if ($_REQUEST['text']!="") {
echo "<hr>\n<pre>";
$line1="";
$line2="";
for ($i=0;$i<strlen($_REQUEST['text']);$i++) {
$letter=substr($_REQUEST['text'],$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line1.=$lettertomorse[$letter]." ";
$line2.=$letter;
for ($j=0;$j<strlen($lettertomorse[$letter]);$j++)
$line2.=" ";
$size+=strlen($lettertomorse[$letter])+1;
if ($size>70) {
echo "$line1\n";
echo "$line2\n";
echo "\n";
$line1="";
$line2="";
$size=0;
}
}
echo "$line1\n";
echo "$line2\n";
echo "\n";
echo "\n</pre>\n";
}
?>
Ciao
Tempo fa ho scaricato uno script che trasformava
le lettere inserite nel campo del modulo in
codice morse e viceversa.
<?php
$lettertomorse=array();
$lettertomorse["a"]=".-";
$lettertomorse["b"]="-...";
$lettertomorse["c"]="-.-.";
$lettertomorse["d"]="-..";
$lettertomorse["e"]=".";
$lettertomorse["f"]="..-.";
$lettertomorse["g"]="--.";
$lettertomorse["h"]="....";
$lettertomorse["i"]="..";
$lettertomorse["j"]=".---";
$lettertomorse["k"]=".-.";
$lettertomorse["l"]=".-..";
$lettertomorse["m"]="--";
$lettertomorse["n"]="-.";
$lettertomorse["o"]="---";
$lettertomorse["p"]=".--.";
$lettertomorse["q"]="--.-";
$lettertomorse["r"]=".-.";
$lettertomorse["s"]="...";
$lettertomorse["t"]="-";
$lettertomorse["u"]="..-";
$lettertomorse["v"]="...-";
$lettertomorse["w"]=".--";
$lettertomorse["x"]="-..-";
$lettertomorse["y"]="-.--";
$lettertomorse["z"]="--..";
$lettertomorse["1"]=".----";
$lettertomorse["2"]="..---";
$lettertomorse["3"]="...--";
$lettertomorse["4"]="....-";
$lettertomorse["5"]=".....";
$lettertomorse["6"]="-....";
$lettertomorse["7"]="--...";
$lettertomorse["8"]="---..";
$lettertomorse["9"]="----.";
$lettertomorse["0"]="-----";
$lettertomorse[" "]=" ";
$lettertomorse["."]=".-.-.-";
$lettertomorse[","]="--..--";
$lettertomorse["EOM"]=".-.-.";
$morsetoletter=array();
reset($lettertomorse);
while (list($letter,$code)=each($lettertomorse)) {
$morsetoletter[$code]=$letter;
}
function morse_encode($txt) {
global $lettertomorse;
$line="";
for ($i=0;$i<strlen($txt);$i++) {
$letter=substr($txt,$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line.=$lettertomorse[$letter]." ";
}
return $line;
}
function morse_decode($string) {
global $morsetoletter;
$line="";
$letters=array();
$letters=explode(" ",$string);
foreach ($letters as $letter) {
// ignore unknown characters
if ($letter=="") $line.=" ";
if ($morsetoletter[$letter]=="") continue;
$line.=$morsetoletter[$letter];
}
return $line;
}
?>
<h1>Morse transletter</h1>
<form method="post" action="<?php echo $PHP_SELF ?>">
Real life text: <input type="text" name="txt" value="<?php echo $txt?>" size=50>
<br>
Morse text: <input type="text" name="morse" value="<?php echo $morse?>" size=50>
<input type="submit" value="Convert">
<input type="reset">
<br>
<hr>
<?php
if ($morse!="") {
echo morse_decode($morse),"<br>\n";
}
if ($txt!="") {
echo morse_encode($txt),"<br>\n";
}
if ($txt!="") {
echo "<hr>\n<pre>";
$line1="";
$line2="";
for ($i=0;$i<strlen($txt);$i++) {
$letter=substr($txt,$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line1.=$lettertomorse[$letter]." ";
$line2.=$letter;
for ($j=0;$j<strlen($lettertomorse[$letter]);$j++)
$line2.=" ";
$size+=strlen($lettertomorse[$letter])+1;
if ($size>70) {
echo "$line1\n";
echo "$line2\n";
echo "\n";
$line1="";
$line2="";
$size=0;
}
}
echo "$line1\n";
echo "$line2\n";
echo "\n";
echo "\n</pre>\n";
}
?>
Poi ho aggiornato il php apache ecc ecc (easy php)
che porta di default register_global su off
e il codice di cui sopra non funziona più
Ho tentato di aggiornare il codice
inserendo i vari request
ma adesso addirittura non visualizzo più niente
Non riesco a capire dove è l'errore.
E' da un po di tempo che non metto mani su codice
php e html (mi sto dedicando alla grafica :-))
Potete aiutarmi, per piacere?
Questo è il codice da me modificato:
<?php
$lettertomorse=array();
$lettertomorse["a"]=".-";
$lettertomorse["b"]="-...";
$lettertomorse["c"]="-.-.";
$lettertomorse["d"]="-..";
$lettertomorse["e"]=".";
$lettertomorse["f"]="..-.";
$lettertomorse["g"]="--.";
$lettertomorse["h"]="....";
$lettertomorse["i"]="..";
$lettertomorse["j"]=".---";
$lettertomorse["k"]=".-.";
$lettertomorse["l"]=".-..";
$lettertomorse["m"]="--";
$lettertomorse["n"]="-.";
$lettertomorse["o"]="---";
$lettertomorse["p"]=".--.";
$lettertomorse["q"]="--.-";
$lettertomorse["r"]=".-.";
$lettertomorse["s"]="...";
$lettertomorse["t"]="-";
$lettertomorse["u"]="..-";
$lettertomorse["v"]="...-";
$lettertomorse["w"]=".--";
$lettertomorse["x"]="-..-";
$lettertomorse["y"]="-.--";
$lettertomorse["z"]="--..";
$lettertomorse["1"]=".----";
$lettertomorse["2"]="..---";
$lettertomorse["3"]="...--";
$lettertomorse["4"]="....-";
$lettertomorse["5"]=".....";
$lettertomorse["6"]="-....";
$lettertomorse["7"]="--...";
$lettertomorse["8"]="---..";
$lettertomorse["9"]="----.";
$lettertomorse["0"]="-----";
$lettertomorse[" "]=" ";
$lettertomorse["."]=".-.-.-";
$lettertomorse[","]="--..--";
$lettertomorse["EOM"]=".-.-.";
$morsetoletter=array();
reset($lettertomorse);
while (list($letter,$code)=each($lettertomorse)) {
$morsetoletter[$code]=$letter;
}
function morse_encode($_REQUEST['text']) {
global $lettertomorse;
$line="";
for ($i=0;$i<strlen($_REQUEST['text']);$i++) {
$letter=substr($_REQUEST['text'],$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line.=$lettertomorse[$letter]." ";
}
return $line;
}
function morse_decode($string) {
global $morsetoletter;
$line="";
$letters=array();
$letters=explode(" ",$string);
foreach ($letters as $letter) {
// ignore unknown characters
if ($letter=="") $line.=" ";
if ($morsetoletter[$letter]=="") continue;
$line.=$morsetoletter[$letter];
}
return $line;
}
?>
<h1>Morse transletter</h1>
<form method="post" action="<?php echo $PHP_SELF ?>">
Real life text: <input type="text" name="txt" value="<?php echo '".($_REQUEST['text'])."'?>" size=50>
<br>
Morse text: <input type="text" name="morse" value="<?php echo '".($_REQUEST['morse'])."'?>" size=50>
<input type="submit" value="Convert">
<input type="reset">
<br>
<hr>
<?php
if ($_REQUEST['morse']!="") {
echo morse_decode($_REQUEST['morse']),"<br>\n";
}
if ($_REQUEST['text']!="") {
echo morse_encode($_REQUEST['text']),"<br>\n";
}
if ($_REQUEST['text']!="") {
echo "<hr>\n<pre>";
$line1="";
$line2="";
for ($i=0;$i<strlen($_REQUEST['text']);$i++) {
$letter=substr($_REQUEST['text'],$i,1);
// ignore unknown characters
if ($lettertomorse[$letter]=="") continue;
$line1.=$lettertomorse[$letter]." ";
$line2.=$letter;
for ($j=0;$j<strlen($lettertomorse[$letter]);$j++)
$line2.=" ";
$size+=strlen($lettertomorse[$letter])+1;
if ($size>70) {
echo "$line1\n";
echo "$line2\n";
echo "\n";
$line1="";
$line2="";
$size=0;
}
}
echo "$line1\n";
echo "$line2\n";
echo "\n";
echo "\n</pre>\n";
}
?>
Ciao