Come posso localizzare efficacemente un'applicazione con gettext?
Ho cercato su google informazioni, ma tutto quello che ho trovato mi ha lasciato molto perplesso...
Se fosse possibile mi servirebbero dei chiarimenti in merito!
Grazie
Come posso localizzare efficacemente un'applicazione con gettext?
Ho cercato su google informazioni, ma tutto quello che ho trovato mi ha lasciato molto perplesso...
Se fosse possibile mi servirebbero dei chiarimenti in merito!
Grazie
Sono riuscito a risolvere il problema, e l'espressione che ha funzionato alla fine è stata
#^[a-zA-Z\s0-9_-]+$#
come segnalatomi su html.it ( forum.html.it/forum/showthread.php?s=&postid=13220932#post13220932 )
Grazie comunque
Ciao a tutti
infatti... Intendevo i proprietari delle password.. ero in una situazione in cui nonostante un certo numero di utenti mi è stato possibile farlo...Ma non discutiamone oltre che stiamo finendo OT!
Rinnovo la mia domanda: chiedere su un forum di drupal ( italiano o sul forum ufficiale )? Probabilmente si riesce a capirci di più...
stai consigliando un lavoro di giorni se non settimane di computazione e molto pericoloso a livello legale e di invasione della privacy rispetto ad una modifica innocua ad un codice sorgente?
In verità non c'è computazione da fare. Ricerchi su un database le coppie hash - stringa. Di certo non ti metti a fare un bruteforce delle password ( li si che se ne vanno le settimane )...
Sull'innocuo ho dei dubbi.. Perchè è innocuo fino a che funziona. Poi per gli sviluppatori potrebbe diventare ben peggio! Una modifica al codice sorgente di un programma può rivelarsi tutt'altro che una cosa innocua... inoltre parliamo di drupal, che non è propriamente un "programmino", ma è un bestione con un sacco di righe di codice... La soluzione migliore sarebbe sicuramente un modulo, anche se non ho idea da dove si possa cominciare...
@jokerinos Postare su drupalitalia.org una richiesta di aiuto? Uso drupal da un paio di annetti, quindi non sono così esperto, ma di sicuro li ti possono dare una mano...
Sulla provacy hai ragione, potenzialmente è molto pericoloso, però non so quali siano le condizioni a cui si debba lavorare. Personalmente per dei siti che ho fatto per amici ho già decrittato le password ( almeno quelle che sono riuscito a trovare ), ovviamente con il loro consenso.
@jokerinos E' necessario mantenere le password?? Non si può avvisare gli utenti che quando cambia la piattaforma loro dovranno cambiare password??
E' un lavoro estremamente noioso ( ho letto che hai scritto che ci sono 1000 password ) però forse puoi riuscire a decrittarle tramite alcuni siti.
Di per se l'md5 è univoco, non permette il decrittaggio. Ma con tanto tempo e un bel po di raccolta dati o bruteforce puoi costruire dei database di decrittaggio, tramite i quali puoi risalire alla password originale ( non sempre, dipende molto dall'unicità della password! ).
Puoi cercare "md5 decrypt" su google, e trovi un sacco di tool ( ne ho visto uno che fa anche la conversione in batch ) che ti permettono, tramite il metodo del reverse database lookup di decrittare un hash md5.
Da li semplicemente puoi fare l'inserimento in drupal.
Personalmente ti sconsiglierei di modificare il codice... è una cosa semplice da fare, che però molto probabilmente ti posticiperà solo il problema ( oltre ad obbligarti a rifare la procedura per ogni aggiornamento del core di drupal ).
define('TABLE_TEXT_LASTMINUTE', 'permette l' inserimento di solo testo ma non più parti di codice');
Questo define è codice php? Immagino di si, ma non ho capito perchè l'hai postato...
se c'è la aggiungo io, si vede solo nel database, ma no in stanza, e poi non si vede neanche l'immagine da inserire
Non ho ben capito questa parte, puoi chiarirla?
Salve a tutti, sto sviluppando un form di inserimento dati e ho notevoli ( a dir poco ) problemi con la validazione di un campo di input!
La richiesta è semplice: il campo rappresenta un modello di un oggetto, e deve poter contenere caratteri alfanumerici, trattini ( - ), underscore ( _ ) e spazi; il controllo sulla presenza o meno di questi caratteri è effettuato con l'istruzione
[php]!empty($fields[$field_name]) && !preg_match($reg_exp, $fields[$field_name])[/php]dove $field è il campo del form e $reg_exp è l'espressione regolare da utilizzare per il controllo.
Ho cercato sul forum e ho trovato questa espressione:
/^[a-zA-Z0-9 ]{1,50}$/
```( nel topic **Regex e controllo Stringa** ), ma non mi è stata molto utile ( l'ho riadattata prima di usarla ).:(
Attualmente ho scritto questa espressione
[A-Za-z0-9_\s-]
Come posso risolvere? Dove sto sbagliando??
Il motivo per cui ti si faceva notare il for è che all'interno tu scorri tutti gli oggetti presenti in $result.
Credo sia per quello che funziona solo il primo ciclo!
Vediamola in pseudo codice:
mi connetto al db
eseguo la query e salvo i risultati in $result
per un numero x di elementi {
finchè esistono oggetti in $result {
assegna a stringa $giocatore->idGiocatore
}
}
```Vista così mi sembra possibile che funzioni solo il primo ciclo.... dopo il primo tu hai svuotato $result con il while.
Perchè non segui l'esempio dato dal manuale di PHP ( php.net/manual/en/function.mysql-fetch-object.php )?
[php]
mysql_connect("hostname", "user", "password");
mysql_select_db("mydb");
$result = mysql_query("select * from mytable");
while ($row = mysql_fetch_object($result)) {
echo $row->user_id;
echo $row->fullname;
}
mysql_free_result($result);
[/php]
Andiamo per ordine:
$conta lo puoi inizializzare a 0 ( devi scorrere una array, il cui indice parte da 0 )
[php]$conta = 0; // non mettere "0" perchè inizializzi una stringa![/php]Così forse stampa qualcosa... Se i miei ricordi sono giusti, se PHP trova una variabile non inizializzata la inizializza con NULL, che poi viene interpretato come 0, stringa vuota, false e tutti i valori "nulli"...
Per vedere se è così abilita gli errori di tipio E_NOTICE, che ti segnalano quando una variabile non è inizializzata ( qui un bell'articolo php.html.it/guide/lezione/2642/le-variabili/ verso metà pagina trovi un esempio di variabili non inizializzate ).
Per il foreach ( php.net/manual/en/control-structures.foreach.php ), verrebbe così:
[php]
foreach ( $prov as $p ) {
echo '<div><a href="'.$urlsito.'citta/escort_'.$p.'.php">'.$p.'</a></div>';
}
[/php]invece di
[php]
for ($contat=0; $contat < $lungprov; $contat++) {
echo '<div><a href="'.$urlsito.'citta/escort_'.$prov[$contat].'.php">'.$prov[$contat].'</a></div>';
} [/php]Ossia per tradurre in linguaggio:
Per ogni $p elemento di $prov {
esegui codice
}
Si, possibile è possibile. Diciamo che, personalmente, il fatto che non si curi di dove debba essere la parola che cerca non mi piace...
Il codice dovrebbe essere così:
[php]
// se la posizione della stringa "mela" nell'URL della pagina è diverso
// ( sia per valore che per tipo ) da false
if ( strpos($_SERVER["REQUEST_URI"], "mela") !== false ) {
// stampa menu "mela"
}
// altrimenti se la posizione della stringa "cane" ...
else if strpos($_SERVER["REQUEST_URI"], "cane") !== false ) {
// stampa menu "cane"
}
// altrimenti se ...
// altrimenti se ...
[/php]Il codice usa la variabile predefinita di PHP $_SERVER, con il parametro "REQUEST_URI" per ottenere l'URL usata per raggiungere la pagina.
Poi controlla che al suo interno in qualsiasi posizione ci sia la stringa che si vuole ( funzione strpos() php.net/manual/en/function.strpos.php ).
Fai attenzione solo al
[php]strpos(...) !== false[/php]Questo perchè, da documentazione di PHP, se la posizione della stringa che cerchi fosse 0 ( ossia all'inizio della stringa ) PHP lo interpreterebbe come false. In questo modo lui controlla che oltre ad essere un valore uguale, lo sia anche nel tipo ( strpos ritorna un int, false è invece un booleano php.net/manual/en/language.operators.comparison.php ).
Ti ripeto però che il fatto che la stringa possa essere in qualsiasi posizione nell'URL potrebbe crearti qualche problema.
Altra cosa su cui fare attenzione: se le condizioni sono esclusive tra loro ( ossia se una volta che hai trovato una stringa le altre non ti interessano più ) è importante usare il costrutto
[php]if ()
else if ()
else if ()
...[/php]perchè altrimenti fai fare al server un sacco di lavoro inutile. Ossia se hai trovato mela, non cerchi più le altre stringhe.
Se invece usi
[php]if()
if ()
if()
...[/php]Non importa che tu abbia trovato una stringa, lui cerca nell'URL tutte le stringhe.
Puoi postare un pezzo di codice più lungo? Altrimenti è difficile venirne a capo....
Per esempio, la variabile $conta dove viene inizializzata? Viene incrementata? Deve esserlo?
$lungprov immagino sia il risultato di count($prov), ma senza vedere il tuo codice non posso esserne sicuro...
Ora non sono sul mio pc, quindi non posso fare le prove necessarie, ma hai provato a passargli la variabile per referenza ( la butto li, non ho idea se funzioni )?
[php]$Julian4 = &$Umbriaprov; [/php]
Perchè non usi un framework css? Ce ne sono di semplicissimi che ti permettono di evitare i problemi di visualizzazione su diversi browser in larga parte...
Per la pagina che hai realizzato secondo me il problema sta nei posizionamenti. I posizionamenti relativi usati così a volte possono essere difficili da gestire...
A questo punto perchè non usare un framework?? Se ti interessa ti do un po' di informazioni aggiuntive...
Cosa significa che non funziona?
Ti ritorna errori oppure non fa semplicemente quello che vuoi?
Così ad una rapida occhiata sembrerebbe corretto, almeno dal punto di vista sintattico...
E se hai bisogno ecco il link alla documentazione ufficiale di php per il costrutto switch(): php.net/manual/en/control-structures.switch.php
Allora... Scusa se ho confuso il tuo problema, nel delirio di capire come risolverlo non l'ho inquadrato bene!
Dopodichè :?, credo stavolta di avercela fatta sul serio! ( Spero.... )
Cerco di andare per punti, spiegarlo è piuttosto difficile!
Per comodità ho postato il codice anche su PasteBin, pastebin.com/5UJAj9EC
Se hai ancora bisogno chiedi pure, ma spero proprio di avercela fatta