« 1 2 »
Autor Zpráva
jakubroz
Profil
ahoj,
mam form a action odkazuje na jinej server. mam tam inputy a potřebuju aby se data který uživatel vyplní do toho inputu odeslaly už bez diakritiky.
tady jsem našel jak by to šlo udělat.
$text = strtr($text,"áäčďéěëíňóöřšťúůüýžÁÄČĎÉĚËÍŇÓÖŘŠŤÚŮÜÝŽ",
"aacdeeeinoorstuuuyzAACDEEEINOORSTUUUYZ");


ale neumim to zakompomovat s těma inputama.
Tady je jeden vzorovej:
<input type="text" class="input" name="FromStn"
id="FromStn" size="35" value="" tabindex="1">

tak mi zkuste poradit.dik
kajman
Profil *
myslím, že jsou 3 možnosti:
1, donuť uživatele, aby to zadal bez diatritiky
2, zbav to diakritiky na cílovém serveru
3, zbav to diakritiky pomocí JS
kajaman
Profil
srry, jsem se uťuk..

myslím, že jsou 3 možnosti:
1, donuť uživatele, aby to zadal bez diatritiky
2, zbav to diakritiky na cílovém serveru
3, zbav to diakritiky pomocí JS
jakubroz
Profil
takže pomocí php to nejde? jak by to šlo pomocí toho javascriptu?
yFang
Profil
jakubroz
takže pomocí php to nejde? jak by to šlo pomocí toho javascriptu?
Jde, tak jak sis to našel. ;-)
jakubroz
Profil
no a mohl by mi někdo říct jak to mam propojit s tim inputem? já jak je ten script na smazání diakritiky tak jsem tu proměnou text nahradil za jméno toho inputu. no ale to nešlo
Nox
Profil
Přes PHP leda bys to bral mezi tím jiným serverem a touto stránkou ještě přes jednu, kde bys to upravil, echnul do inputů a zase odeslal, jinak (kromě toho co psal kajaman) nevim
jakubroz
Profil
no tak ono by to nevadilo kdyby to šlo ještě přes jednu stránku, ale musel by se ten form potom sám odeslat aby to uživatele nezatěžovalo a ani to nepoznal.
yFang
Profil
Nox
Proč by to nešlo upravit přímo v tom, který bude s odeslanými daty pracovat? Stačilo by přece připsat jeden řádek.
jakubroz
Profil
no protože ty data se odesílají na jiný server na který nemam přístup.(sorry to nebylo mě co)
yFang
Profil
jakubroz
No tak to potom jo.
jakubroz
Profil
tak jak by to šlo udělat nejlíp?
yFang
Profil
jakubroz
Buď jak radí Nox, nebo JS, ale to si můžou lidi vypnout, no...
Nox
Profil
yFang
Jenže to moje taky potřebuje JS a to k odeslání formuláře...možná pokud je možný manuálně odeslat proměnný jako POST přes header, ale to netuším
jakubroz
Profil
a jak radí nox? ještě přes jednu stránku? a jde udělat to že hned jak se ty inputy naplní těma vypsanýma datama z inputů bez diakrtitiky aby se to odeslalo samo?
Nox
Profil
jakubroz
Přes ten javascript...nevim jestli to jde tak hezky jako přes php, mrkni třeba na
http://www.javascriptkit.com/javatutors/redev3.shtml
(kromě JPW a google)
yFang
Profil
Přes javascript je to sice hezké, ale nevím, zda je to ideální řešení. Mnoho lidí si ho vypíná.
jakubroz
Profil
a mohl by si mi ukázat jak to udělat na tom mojem jednou inputu, další už bych zvládnul.
ta stránka mi toho moc neřekla.
kajaman
Profil
myslím, že ten JS nakonec nebude dobrý nápad, protože nad tím nebudeš mít 100% kontrolu
Nox
Profil
yFang
Mnoho = cca 1-3%
jakubroz
Profil
tak mohl bys mi to ukázat na tom mojem připadu. budu rád. z tý stránky jsem nic nepochopil. dik
yFang
Profil
Nox
No dobře... :-)
Nox
Profil
Jako když je možnost, tak je lepší bez JS, ale tady mě to jinak nenapadá
jakubroz
Profil
a mohl by si mi ukázat jak to teda udělat. dik moc
jakubroz
Profil
mohli by jste se mi na to někdo podívat a napsat jak by to mělo být s tim JS? dik
yFang
Profil
jakubroz
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">;
  <title></title>
  <script type="text/javascript">
  sdiak="áčďéěíňóřšťúůýřžÁČĎĚÉÍŇÓŠŤÚŮÝŘŽ";
  bdiak="acdeeinorstuuyrzACDEFINOSTUUYRZ";
  
  function bezdiak(form)
  {
    tx="";txt=form.txt.value;
    for(p=0;p<txt.length;p++)
    {
      if (sdiak.indexOf(txt.charAt(p))!=-1)
        tx+=bdiak.charAt(sdiak.indexOf(txt.charAt(p)))
      else tx+=txt.charAt(p);
    }
    form.txt.value=tx;
  }
  </script>
  </head>
  <body>
  <form action="?">
  <textarea name="txt" cols="30" rows="4"></textarea><br>
  <input type="button" value="Odstranit diakritiku" onclick="bezdiak(form);">
  </form>
  </body>
</html>


A tady máš ještě "živou" ukázku: http://labs.yellowfang.wz.cz/odstran-diakritiku.html
Samozřejmě si tam můžeš přidat další znaky. ;-)
jakubroz
Profil
jo to už jsem vyděl na jaknaweb
ale nešlo i to.

v tom scriptu všechno co je "txt" zaměnim za název toho mojeho inputu?
a potom to onclick stačí dát do toho submitu keterej odesílá celej form na ten server?
mě to nešlo
imploder
Profil
Nox
Jako když je možnost, tak je lepší bez JS, ale tady mě to jinak nenapadá
Určitě to POSTnout PHP skriptem jaks říkal přes hlavičky jde, co dokáže poslat prohlížeč dokáže poslat PHP taky. Pokud neexistuje nic speciálního, pořád ještě si můžeš naprogramovat jakoukoliv komunikaci v HTTP (nebo dokonce i jiném protokolu) s libovolným počítačem. Socket pro síťovou komunikaci se otevírá funkcí FSockOpen(string <<počítač>>, integer <<port>>, integer <<chybový_kód>>, string <<chybové_hlášení>>). Vrací ukazatel na otevřený socket, se kterým se po takovémto vytvoření spojení pracuje jako se souborem (tj. funkce FOpen(), FWrite(), FGetS(), ...atd.). Mám to z knihy Jirky Koska, sám se v tom moc nevyznám, můžu doporučit jen RTFM :-)
jakubroz
Profil
jo ale ted prosím jestli by mi mohl někdo odpovědět na ten dotaz před tím. udělám to tím JS ale potřebuju vědět jak upravit ten kod aby to šlo.
jakubroz
Profil
už jsem to vyřešil.
« 1 2 »

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0