[HTML JS?] vice inputboxu -> jedna promenna
na jedne php strance potrebuju mit nekolik inputboxu (rekneme 3 nebo 4) a potrebuju aby se to co do nich zadam predalo v URL pomoci jednoho parametru tzn. ne ?IBOX1="neco"&IBOX2="blabla"&IBOX3=... ale napriklad jako ?INPUT="neco AND blabla AND ..."
jak to udelat? predpokladam, ze to bude potreba udelat pomoci javascriptu, ale netusim jak :-?
Re: [HTML JS?] vice inputboxu -> jedna promenna
Jedu rychle reseni z hlavy takze kdyz tak korekce pls :)
Kód:
<script>
function mnau(){
var a = document.getElementById("a");
var b = document.getElementById("b");
var c = document.getElementById("c");
var d = document.getElementById("d");
d.value = a.value + " AND " + b.value + " AND " + c.value;
}
</script>
...
<html>
...
<form onsubmit="mnau()">
<input id="a" />
<input id="b" />
<input id="c" />
<input type="hidden" id="d" />
</form>
...
</html>
Na serveru budes mit vysledek v promenne d.
Re: [HTML JS?] vice inputboxu -> jedna promenna
diky, po mensich upravach mi to funguje, ale pouze na samostane strance. kdyz se snazim zabastlit do php stranky oscommerc, tak bezuspesne :(
problem mozna bude v cele strukture oscommerce - nacte index.php (kam sem hodil tu cast se scriptem), potom kdyz nekde kliknu tak se znovu nacte index.php a jako telo stranky se nacte stranka.php na ktere je ten formular... ale kdyz mrknu na zdrojak te stranky, vsechno vypada OK
Re: [HTML JS?] vice inputboxu -> jedna promenna
A ne nebijou se ti tam IDecka? Jako zes treba omylem dal nejake, ktere uz nejaky prvek ma.
Re: [HTML JS?] vice inputboxu -> jedna promenna
Citace:
Původně odeslal jedik
A ne nebijou se ti tam IDecka? Jako zes treba omylem dal nejake, ktere uz nejaky prvek ma.
tim sem si jist, protoze sem jim dal cesky nazvy a celej oscommerce je anglicky, navic sem to kontroloval
Re: [HTML JS?] vice inputboxu -> jedna promenna
tak uz to chodi, byl tam jeden malej preklep - co jinyho :mad: ;D
Re: [HTML JS?] vice inputboxu -> jedna promenna
muzete prosim nekdo overit jestli neco takovyho chodi korektne v IE?
ve Firefoxu nemam problem a ted sem to nahodou zkusil v IE a zjistil sem, ze to tam nejak nechodi.
ale delal sem mezitim i nejaky jiny upravy, tak ted nevim :rolleyes:
Re: [HTML JS?] vice inputboxu -> jedna promenna
A nevyřešilo by ti to použít u všech inputů stejný name s []???
Jako:
Kód:
<input type="text" name="input[]">
<input type="text" name="input[]">
<input type="text" name="input[]">
<input type="text" name="input[]">
Pak budeš mít přístup ke všem hodnotám inputů přes pole:
Kód:
foreach($_GET["input"] as $value) echo $value."<br>";
Re: [HTML JS?] vice inputboxu -> jedna promenna
Citace:
Původně odeslal Smitka
A nevyřešilo by ti to použít u všech inputů stejný name s []???
zkusim a dam vedet
Re: [HTML JS?] vice inputboxu -> jedna promenna
hmm tak to nejak nefakci
btw: ja opravdu potrebuju aby se ten slozenej retezec uz primo objevil v URL...
Re: [HTML JS?] vice inputboxu -> jedna promenna
Malo by stacit, aby vsetky tie inputy mali rovnake names a ak chces prenasat tie params cez url, treba vo forme specifikovat get metodu. Asi takto:
Kód:
<form action="nejake_url" method="get">
<input type="text" name="nazov_parametra" />
<input type="text" name="nazov_parametra" />
...
</form>
Re: [HTML JS?] vice inputboxu -> jedna promenna
Citace:
Původně odeslal sisi
Malo by stacit, aby vsetky tie inputy mali rovnake names a ak chces prenasat tie params cez url, treba vo forme specifikovat get metodu. Asi takto:
Kód:
<form action="nejake_url" method="get">
<input type="text" name="nazov_parametra" />
<input type="text" name="nazov_parametra" />
...
</form>
To myslim nepůjde, nahází to do adresy postupně všechny parametry, který budou oddělený & stejně jako v běžnym případě, ale budou mít stejný jméno, takže bude platit jenom ten poslední a pak se k nim z PHP nedostane (když nebude rozsekávat do co je za ?). Já právě používam stejný name, jak řikáš, ale je potřeba, aby to končilo na []
Kód:
<input type="text" name="nazov_parametra[]" />
, pak to PHP bere jako pole, ale bohužel to taky nahází do URL výčet prvků, což on nechce...
Re: [HTML JS?] vice inputboxu -> jedna promenna
2wong: Ještě mě napadlo, že když chceš aby se ti řetězec objevil v url, tak ani nemusíš používat odesílání dat z formuláře, stačí se jenom javascriptem přesměrovat na požadovanou stránku a hodit jí do adresy parametry:
Kód:
<html>
<head>
<script type="text/javascript">
function haf(){
var params="d=";
params+=document.formik.a1.value;
params+=" AND ";
params+=document.formik.a2.value;
params+=" AND ";
params+=document.formik.a3.value;
params+=" AND ";
params+=document.formik.a4.value;
window.location="multi.php?"+params;
}
</script>
</head>
<body>
<?
echo $_GET["d"];
?>
<form name="formik" action="multi.php" method="get">
<input type="text" name="a1">
<input type="text" name="a2">
<input type="text" name="a3">
<input type="text" name="a4">
<input type="button" value="Odeslat" onclick="haf()">
</form>
</body>
</html>
Zkoušel jsem to v Mozille, Opeře i IE
Re: [HTML JS?] vice inputboxu -> jedna promenna
Citace:
Původně odeslal Smitka
To myslim nepůjde, nahází to do adresy postupně všechny parametry, který budou oddělený & stejně jako v běžnym případě, ale budou mít stejný jméno, takže bude platit jenom ten poslední a pak se k nim z PHP nedostane (když nebude rozsekávat do co je za ?).
Sa mi nechce verit, ze je PHP tak retarded... JSP/Servlety s tymto nemaju problem, existuju metody ktore vracaju array values pre dany request parameter.
EDIT: Ovsem ako teraz pozeram, ak musia byt tie values oddelene tym " AND " substringom, tak potom sa clovek JS nevyhne.
Re: [HTML JS?] vice inputboxu -> jedna promenna
Citace:
Původně odeslal Smitka
To myslim nepůjde, nahází to do adresy postupně všechny parametry, který budou oddělený & stejně jako v běžnym případě, ale budou mít stejný jméno, takže bude platit jenom ten poslední a pak se k nim z PHP nedostane (když nebude rozsekávat do co je za ?).
PHP kód:
<?php
$reqs = explode('&',$_SERVER['QUERY_STRING']);
foreach ($reqs as $request) {
list($name,$value) = explode('=',$request);
echo "Pod jmenem '$name' jsem dostal '$value'\n";
}
?>
Re: [HTML JS?] vice inputboxu -> jedna promenna
To je právě to "když nebude rozsekávat to co je za ?" :-), ale beru, že to zas neni takovej problém ;-)
Re: [HTML JS?] vice inputboxu -> jedna promenna
tak uz mne to chodi. diky vsem