qualcuno sa come creare un traduttore es: italiano>francese tedesco>coreano
non so mi va bene anche solo in inglese ho provato a vedere su babel fish ma in poche parole e solo un collegamento al loro sito
qualcuno sa come creare un traduttore es: italiano>francese tedesco>coreano
non so mi va bene anche solo in inglese ho provato a vedere su babel fish ma in poche parole e solo un collegamento al loro sito
testo -> funzione di replace & database -> testo tradotto
=)
cioè scusa sono nuova ma non ho capito come devorei fare....
Non si capisce se si vuole creare da zero un programma (in php) di traduzioni o integrare un qualche strumento già esistente...
ciao!
non saprei basta che e uqlcosa da intregrare nel mio sito comunque consigliamtemi secondo voi qual'è meglio da zero oppure qualcosa già fatto?
ma integrare o riniziare cosa??
Vuoi creare un traduttore? Ti consiglio di mollar ein partenza, nemmeno quello di Google e/o Yahoo traducono bene che hanno dipendenti.
Se non sai nemmeno tu quello che cerchi/vuoi, come possiamo aiutarti?
non so non esite qualcosa già fatto? (comunque il miglior traduttore che ho provato fin ora e babelfish)
yool, sei capace di costruire una frase con un minimo di significato??
Cosa ti serve?
Ciao!
ok ho trovato questo ma non ho capito le pagine che devo creare
http://forum.it.altervista.org/php-m...ttore-php.html
Salve, ho avuto lo stesso problema di Zomer, ossia di creare un traduttore, ma nel mio caso necessito di creare un traduttore personalizzato, tipo questo:
però che funzioni tipo questo traduttore morse: http://webg.net/meris/morse.php
In poche parole devo creare un traduttore, che a ogni lettera corrisponda ad esempio un numero o un codice ecc... Quindi NON creare un dizionario, ma solo un alfabeto...
Spero di essere stato abbastanza chiaro e grazie anticipatamente per ogni risposta :)
Con la str_replace() puoi sostituire lettere o parole.
Questo sopra stamperà: #kjoCodice PHP:
$stringa = 'ciao';
str_replace('c','#',$stringa);
str_replace('i','k',$stringa);
str_replace('a','j',$stringa);
echo $stringa;
Non so se è quello che cercavi...
EDIT:
ho visto il link.
Puoi fare così:
La strtoupper() trasforma tutta la stringa in maiuscolo, in modo che non devi sistituire pure le lettere minuscoleCodice PHP:
str_replace('A','.-',strtoupper($stringa));
str_replace('B','-...',strtoupper($stringa));
str_replace('C','-.-.',strtoupper($stringa));
//ecc ecc...
Ciao!
Ultima modifica di alemoppo : 14-02-2010 alle ore 15.49.49
regolamento altervista_______________ regolamento forum
GRAZIE, provo subito e saprò dire!!!
Edit.
Come non detto, non ci sono saltato FUORI...o meglio dovevo avvisare che con il PHP sono alle prime ARMI e non riesco ancora BENE a integrarlo con l'HTML...
...non è che mi potresti fare un esempio come riportato qui:
http://forum.it.altervista.org/php-m...ttore-php.html
naturalmente con calma, dopo prometto che NON rompo più ...
Ultima modifica di musicanapoli : 14-02-2010 alle ore 17.37.27 Motivo: post consecutivi
Dunque:
File di origine:
Codice HTML:<html> <head> <title>Cerca</title> </head> <body> <form action="cerca.php" method="post"> <textarea name="parola"></textarea> <input type="submit" name="Cerca"> </form> </body> </html>
file chiamato cerca.php:
Ciao!Codice PHP:
<html>
<head>
<title>Cerca</title>
</head>
<body>
<?php
$stringa = $_POST['parola'];
str_replace('A','.-',strtoupper($stringa));
str_replace('B','-...',strtoupper($stringa));
str_replace('C','-.-.',strtoupper($stringa));
echo '<textarea>'.$stringa.'<textarea>';
?>
</body>
</html>
regolamento altervista_______________ regolamento forum
Fai prima a fare un array con tutte le lettere e un altro con il codice morse, poi passi questi due array a str_replace, altrimenti avrai più di 20 stringhe inutilmente.
Esempio:
E così via per ogni letteraCodice PHP:
$find = range('A', 'Z');
$replace = ('.-', '-...', '-.-.', '');
Codice PHP:
$find = range('A', 'Z');
$replace = ('.-', '-...', '-.-.', '');
$stringa = str_replace($find, $replace, strtoupper($stringa));
Ancora grazie per le risposte, proverò anche il metodo di biccheddu, appena riuscirò a saltarci fuori...
dopo aver copiato e hostato PARO PARO quello che mi ha consigliato alemoppo, il risultato non è stato quello che speravo, ossia questo:
http://digilander.libero.it/PoIsOnBlAcK/cerca/cerca.php
poi credendo che T'HO fosse un problema di libero ho provato a hostarlo MOMENTANEAMENTE sul sito di un mio cliente, ma il risultato non cambia!
http://www.somethingmore.name/cerca/cerca.html
le lettere caricate per ora sono solo A,B,C, come da esempio di alemoppo...
...sapevo che avevo detto che non avrei più rotto, però la sfortuna a quanto pare mi perseguita. :(
Ma che domini usi???
Non usi altervista???
In altri domini forse non è supportato il PHP!
Poi sostituisci
conCodice PHP:
echo '<textarea>'.$stringa.'<textarea>';
Codice PHP:
echo '<textarea>'.$stringa.'</textarea>';
Ultima modifica di alemoppo : 14-02-2010 alle ore 17.39.35
regolamento altervista_______________ regolamento forum
Ma così perdi tutte le modifiche fatta alla stringa. Se non salvi il valore in una stringa è inutile.
Secondo me sarebbe meglio usare un array associativo più strtr
Ad esempio:
Oppure stri_replace per un replace case insensitiveCodice PHP:
$stringa = "a b c d e f g h";
$replace = array(
"a" => ".-",
"b", "-..."
);
$stringa = strtr($stringa, $replace);
Grazie a tutti ragazzi, con il vostro aiuto c'è l'ho FINALMENTE fatta!!!
Buon proseguimento di domenica a TODOS...
Ragazzi sono ancora qui a disturbare e mi dispiace farlo sempre di DOMENICA, ma solo di domenica riesco a fare i MIEI pocci...
ho ancora un paio di domande riguardante questo benedetto traduttore!
Il traduttore funziona, ora vorrei un attimo OTTIMIZZARLO, ossia ora vorrei attribuire un valore allo spazio tra le lettere:
es: - = spazio, che alla fine NON c'è tra le lettere
C-I-A-O
Ora per avere il risultato, che potete vedere qui sotto, devo sempre scrivere così:
parola originale ---> C-I-A-O --parola tradotta---> = C1I1A1O
valore PHP:
Mentre vorrei non dovere sempre fare lo spazio tra le lettere, ma che in automatico si riconoscesse un valore a tale spazio, perchè di conseguenza vorrei attribuire un valore anche allo spazio tra le parole:Codice PHP:
$replace = array(
" " => "1",
);
es: - = spazio, che alla fine NON c'è tra le lettere, -- spazio tra parole
C-I-A-O--C-O-M-E--S-T-A-I
frase originale ---> C-I-A-O--C-O-M-E--S-T-A-I --parola tradotta---> = C1I1A1O2C1O1M1E2S1T1A1I
valore PHP:
Avete capito cose intendo fare?!?...è fattibile?!?...se è una cosa troppo complicata, lasciare stare, lo lascio così come è che va già bene!!!Codice PHP:
$replace = array(
" " => "2",
);
Grazie comunque per eventuali risposte...
Prova così! Altrimemnti bisogna suare le espressioni reoglari...Codice PHP:
$parola = str_replace(array(' ', ' '), array('2', '1'), $parola);
funziona, o meglio funziona come prima, ossia devo sempre fare lo spazio MANUALMENTE una o due volte...
mentre vorrei che se non schiaccio lo spazio venga fuori 1, e se faccio uno spazio venga fuori 2...però ora uno spazio è = a 1 e due spazi è uguale a 2...
Io non ci ho capito neinte.
Da quello che hai scritto vuoi che se ci sono due spazi metti 2, altrimenti 1.
Altrimenti vuoi che dopo ogni lettera venga 1 e ogni spazio che separa una parola venga 2?
Prova così:
Io ottengo:Codice PHP:
$str = str_replace(' ', 2, 'string and spaces');
$chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
echo implode(1, $chars);
E' quello che vuoi no?Codice:s1t1r1i1n1g121a1n1d121s1p1a1c1e1s
Esatto, era esattamente questo, però alla fine ho trovato un'altra soluzione PIU' spartana, che però sembra funzionare lo stesso, ossia aggiungere il valore 1 alla lettera tradotta:
Alla fine bastava poco!!!riesco sempre a perdermi in un bicchiere d'acqua, però magari se non ne parlavo con qualcuno non ci sarei ancora arrivato, quindi GRAZIE!!!Codice PHP:
<?php
$stringa = $_POST['parola'];
$replace = array(
"a" => "._.1",
"b" => "._._.1",
" " => "2",
);
$stringa = strtr($stringa, $replace);