PHP and Java Script

4 отговора 174 прегледа
#1

PHP and Java Script

<select id="choiceBox1" multiple="yes" name="Box1[]">
...
<input type="button" onClick="addGroup(this.form.choiceBox1);" value="{lang:Add}">
...

do tuk dobre, vsi4ko ba4ka, no kato submitna formata niama i sleda ot
$_POST["Box1"]
kak da go gepa toia typ masiv?

Отговор
в отговор на Yan-Cho #2

Re: PHP and Java Script

$_POST["box1"][$i]

Предполагам че между [] имаш някаква цифра за това е $и променливата

Break The UnBreakable
Отговор
в отговор на nupaT #3

Re: PHP and Java Script

zna4i po drug na4in se pravi i imah niakade niakav takyv script, ama ne moga da go izrova. Ta tozi masiv izobshto ne se predava na POST-a, ne sym tolkova typ ta da ne moga da si izveda promenlivata, predpolagam 4e listbox-a triabva da se podade po drug na4in na Java Scripta ama ne znam kak

Отговор
в отговор на Yan-Cho #4

Re: PHP and Java Script

<html>
<head>
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1251">
<script language="JavaScript">
<!--
function boxtoarray(obj,obja) {
a = "";
for (i=0; i<obj.options.length; i++)
a += obj.options(i).selected ? obj.options(i).value + "|" : "";
obja.value = a.substr(0,a.length-1);
}
//-->
</script>
</head>

<body bgcolor="#FFFFFF">

<form method=post action="" onsubmit="boxtoarray(Box1,hid); return false;">
<input type="text" name="hid">
<select id="choiceBox1" multiple="yes" name="Box1">
<option value=a>1</option>
<option value=b>2</option>
<option value=c>3</option>
</select>
<input type="submit">

</form>


</body>
</html>

_________________________________________________________


Сега: Червената чертичка ти е разделител, по който да получиш обратно масива! Ще получиш стойностите от избраните елементи. Например ако е избрано 1 и 3 ще получиш a|c... Синьото е името на функцията, която има два параметъра: първия е името на списъка, който да се изръшне, а второто е името на полето, в което да налее масива с избраните елементи! Внимавай имената да съвпадат! Ако не искаш да получаваш value на избраните, а текста в елемента, лилавото да завършва на .text, а ако искаш да получиш номера на избраното, цялото лилаво го заменяш с i...

HTML не поддържа изпращането на multiple поле като масив към сървъра, затова трябва сам да си го напишеш!

И накрая, това текстово поле можеш да го направиш на hidden- направил съм го само за да видиш резултата! И махни return false;... Сложил съм го за да не се събмитва формата, отново за да можеш да видиш резултата!

БАба...

P.S. как да преобразуваш a|c в масив в PHP няма да пиша- трябва да го знаеш!


Ама баба не е жена, вие не знаете ли?
Отговор
в отговор на Yan-Cho #5

Re: PHP and Java Script

<?
if (!isset($_POST['submit'])){
?>
<form name=aaa method=post size=6>
<select name=asd[] multiple>
<option value=1>111</option>
<option value=2>222</option>
<option value=3>333</option>
<option value=4>444</option>
<option value=5>555</option>
</select>
<input type=submit name=submit value="GP!">
<?
}else{
var_dump($_POST);
}
?>


виж сам какво ще ти върне, като селектнеш

root@localhost#cd /pub
root@localhost#more beer
Отговор