Avatar billede dimsen Nybegynder
04. marts 2005 - 21:22 Der er 9 kommentarer og
1 løsning

Oversættelses script

Davs alle eksperter, jeg sidder pt. og prøver på lave et script der kan oversætte en linie man kan copy/paste ind hvor efter den så skifter hvert enkelte bogstav ud med det den er indstillet til, men desværre kan jeg med min begrænsede viden inden for php ikke få det til at lykkes :(.

Derfor ville jeg høre om der var nogle der kendte til eller ville lave mig et lille script hvor scriptet udskifter f.eks. a med c.
Det eneste andet der skulle være er en imput(det man vil have oversat) box og en output(resultat af oversættelse) box :-).

På forhånd tak
Avatar billede elskermad.dk Nybegynder
04. marts 2005 - 21:42 #1
noget lignende dette måske:

<?

$x = 0;
$ny = "";
$tekst = "hej med dig jeg hedder kaj og bor i en sej fiskefilet!";

$fra = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","y","z","æ","ø","å");
$til = array("å","ø","æ","z","y","x","v","u","t","s","r","q","p","o","n","m","l","k","j","i","h","g","f","e","d","c","b","a");

while(strlen($tekst) > $x) {
    $ny .= str_replace($fra,$til,substr($tekst,$x,1));
   
    $x++;
}

echo $ny;

?>
Avatar billede dimsen Nybegynder
05. marts 2005 - 01:09 #2
ah ja det virker helt som jeg havde forestillet mig det, ville det være muligt at tilføje et felt hvor man kan skrive det man vil have oversat, hvorefter den gør dette?
Avatar billede elskermad.dk Nybegynder
05. marts 2005 - 08:00 #3
<?

$x = 0;
$ny = "";

if (!isset($_POST['tekst']) || empty($_POST['tekst']))
$tekst = "hej med dig jeg hedder kaj og bor i en sej fiskefilet!";
else $tekst = $_POST['tekst'];

$fra = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","y","z","æ","ø","å");
$til = array("å","ø","æ","z","y","x","v","u","t","s","r","q","p","o","n","m","l","k","j","i","h","g","f","e","d","c","b","a");

while(strlen($tekst) > $x) {
    $ny .= str_replace($fra,$til,substr($tekst,$x,1));
   
    $x++;
}

echo $ny;

?>

<form name='oversaet' method='post' action='?'>
    <input type='text' name='tekst'> <input type='submit' value='oversæt'>
</form>

burde kunne gøre det (utestet)
Avatar billede olebole Juniormester
05. marts 2005 - 11:44 #4
<ole>

- og i PHP kan man endda behandle en streng som et array på dette felt:

for ($i=0; $i<strlen($tekst); $i++) {
    $ny .= str_replace($fra, $til, $tekst[$i]);
}

/mvh
</bole>
Avatar billede olebole Juniormester
05. marts 2005 - 11:47 #5
Eller man kan bruge strtr():

$aRepl = array(
  "a" => "å",
  "b" => "ø",
  "c" => "æ",
  // osv, osv
);

$nyTekst = strtr($tekst, $aRepl);
Avatar billede olebole Juniormester
05. marts 2005 - 11:48 #6
strtr() er faktisk PHP's oversætter funktion (string-translate) og beregnet specielt til dette her
Avatar billede dimsen Nybegynder
05. marts 2005 - 12:20 #7
jeg fik selv tilføjet en form, problemet ligger bare i at den ikke oversætter det hele kun dele af det man skriver ind. www.dipp.dk/leet.php prøv f.eks. at skrive hej
Avatar billede olebole Juniormester
05. marts 2005 - 13:04 #8
Hvordan ser din PHP-kode ud?
Avatar billede dimsen Nybegynder
05. marts 2005 - 13:47 #9
Prøvede lige med elskermad's forslag med samme resultat, den oversætter stadig ikke det hele.

<?

$x = 0;
$ny = "";

if (!isset($_POST['tekst']) || empty($_POST['tekst']))
$tekst = "hej med dig jeg hedder kaj og bor i en sej fiskefilet!";
else $tekst = $_POST['tekst'];

$fra = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","y","z","æ","ø","å");
$til = array("å","ø","æ","z","y","x","v","u","t","s","r","q","p","o","n","m","l","k","j","i","h","g","f","e","d","c","b","a");

while(strlen($tekst) > $x) {
    $ny .= str_replace($fra,$til,substr($tekst,$x,1));
   
    $x++;
}

echo $ny;

?>

<form name='oversaet' method='post' action='?'>
    <input type='text' name='tekst'> <input type='submit' value='oversæt'>
</form>
Avatar billede dimsen Nybegynder
07. marts 2005 - 20:33 #10
lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester