Meerdere php`s tegelijk aanroepen
UIT
schakelen.php?kanaal=a9&actie=uit&optie=0
schakelen.php?kanaal=a10&actie=uit&optie=0
schakelen.php?kanaal=a11&actie=uit&optie=0
AAN
schakelen.php?kanaal=a9&actie=aan&optie=0
schakelen.php?kanaal=a9&actie=aan&optie=0
schakelen.php?kanaal=a9&actie=aan&optie=0
<li>
<label for="slider"><font size="4px">Spot houtkast</font></label><br>
<select name="slider" id="houtkast" data-role="slider">
<option value="schakelen.php?kanaal=a9&actie=uit&optie=0">OFF</option>
<option value="schakelen.php?kanaal=a9&actie=aan&optie=0">ON</option>
</select>
</li>
Javascript
<script type="text/javascript" src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
<script>
$(document).ready(function($) { // wordt uitgevoerd als de pagina geladen is
$('#spot, #led, #bank, #living, #boom, #houtkast, #stopcontact, #potten, #plafondspot, #haard').change(function(e) { // wanneer de gebruiker de select verandert, doen we dit:
// Ajax aanroepen
var url = $(this).val(); // this is de <select>. .val() haalt de value op
$.ajax({
url: url,
success: function(message) {
}
});
});
})
</script>
PHP
if (isset($_GET['actie']) && $_GET['actie'] === 'aan') {
echo 'lamp is aan!';
}
else {
echo 'lamp is uit!';
}
Waarom zou je het in meerdere bestanden willen hebben? In mijn oogpunt zou dat niet echt duidelijk kunnen worden.
1 actie moet meerdere lampen aansturen.
Zet parameter kanaal in een array en loop die af in je schakelen.php script
Briljant en toch ook wel heel logisch, haha. Heb alleen geen flauw idee hoe ik dat zou moeten verwerken. Zou je een voorbeeld kunnen geven?
{
Doe je ding met $value;
}
Zoiets denk ik
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
/**
* Create a URL correct array from a PHP array
*
* @param array|string $array The PHP array (if string the params will be an array)
* @param string $array, ... Optional All params will be seen as arrays
*
* @return string A URL correct array, ie 'foo|bar|baz'
*/
function array2get()
{
$args = func_get_args();
$getArray = '';
if (func_num_args() == 1 && is_array($args[0])) {
// handle (array('foo', 'bar'))
$getArray = implode('|', $args[0]);
} else {
// handle ('foo', 'bar')
$getArray = implode('|', func_get_args());
}
return $getArray;
}
/**
* Creates a PHP array from a URL correct array
*
* @param string $get The URL correct array
*
* @return array
*/
function get2array($get)
{
return explode('|', $get);
}
/*=============
* Voorbeelden
*=============*/
$channels = array('a9', 'a10', 'a11');
$get = array2get($channels); // string(10) "a9|a10|a11"
$get = array2get('a9', 'a10', 'a11'); // string(10) "a9|a10|a11"
get2array($get); // array(3) { [0]=>string(2) "a9" [1]=>string(3) "a10" [2]=>string(3) "a11" }
/**
* Create a URL correct array from a PHP array
*
* @param array|string $array The PHP array (if string the params will be an array)
* @param string $array, ... Optional All params will be seen as arrays
*
* @return string A URL correct array, ie 'foo|bar|baz'
*/
function array2get()
{
$args = func_get_args();
$getArray = '';
if (func_num_args() == 1 && is_array($args[0])) {
// handle (array('foo', 'bar'))
$getArray = implode('|', $args[0]);
} else {
// handle ('foo', 'bar')
$getArray = implode('|', func_get_args());
}
return $getArray;
}
/**
* Creates a PHP array from a URL correct array
*
* @param string $get The URL correct array
*
* @return array
*/
function get2array($get)
{
return explode('|', $get);
}
/*=============
* Voorbeelden
*=============*/
$channels = array('a9', 'a10', 'a11');
$get = array2get($channels); // string(10) "a9|a10|a11"
$get = array2get('a9', 'a10', 'a11'); // string(10) "a9|a10|a11"
get2array($get); // array(3) { [0]=>string(2) "a9" [1]=>string(3) "a10" [2]=>string(3) "a11" }
Super! Heb er nu helaas geen tijd voor, maar ga er vanavond mee aan de slag.