html button onClick = php functie
Heb een variabele in mijn programma, bijv. $var
Nu wil ik, dat als ik op een button klik $var gelijkgesteld wordt aan 0.
De volgende stap wat ik wil hebben is dit doen met een lijst (array).
dan heb ik bijv. $var = array('hallo', 'test')
Dan wil ik een tekstvak en een button.
Als ik in het textvak 'hallo' typ, moet $var[0] gelijkgesteld worden aan 0.
($var[0] is 'hallo' in de array)
Bedankt
~Jeroen
En nu mogen wij dat gaan maken?
@jeroen dat heeft er vrij weinig mee te maken dat artikel. je kan net zo goed met een button een php function laten afspelen.. maar het is inderdaad wel aan te raden om zoiets met javascript (jQuery) te doen.
Misschien had ik dat erbij moeten zetten, sorry. (Moest weg dus ben heb vragen voor tips vergeten te typen :S)
Het probleem is dat een button, (volgens mij via html) een andere .php file uitvoert via javascript. Ik wil nu geen .php bestand uitgevoerd hebben, maar een functie.
Ik heb dit geprobeert, maar dat werkt niet:
<input type=\"button\" onClick=\"functie1()\" value=\"Klik hier\"/>
Mijn vraag, hoe kan ik een button een functie laten uitvoeren?
(Het orginele topic was eigenlijk alleen extra uitleg bij deze vraag, sorry)
Bedankt
~Jeroen
om een functie uit te voeren. Dat is prima.
Waar defnieer je functie1()????
Gebruik Waar defnieer je functie1()????
De functie staat in een php code.
Werkt het alleen als de functie in php staan ofzo?
Wil je een PHP-script uitvoeren?
Dan moet je een pagina openen. Dus met een LINK (maar dat kan ook een button zijn).
Gewijzigd op 14/07/2012 17:21:44 door Eddy E
Het lijkt me niet echt handig om voor elke button een aparte pagina moet maken.
Ideeën?
~Jeroen
En roep die zo aan
exec_functions.php?f=1 of exec_functions.php?f=2 of exec_functions.php?f=reset_var
exec_functions.php?f=1, ik neem aan dat f=1 staat voor de eerst gedefinieerde fuctie?
Of moet daar de naam van de functie bij?
Wat daar verder mee moet gebeuren is aan jou wat jij in exec_funtions.php zet.
Code (php)
Gewijzigd op 14/07/2012 18:32:51 door Bart V B
In exec_functions.php doe ik dan 'function DoSomething(1)' of 'function DoSomething(2)'?
~Jeroen
Jij wil meerdere functions hebben klopt dat?
Want dan moet je met een switch en een case de $_GET['f'] ophalen.
Dan kan je hem per nummer naar 1 bepaalde function wijzen.
bijvoorbeeld:
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
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
<?php
// switch maken
switch ($_GET['f']) {
case 1:
echo foo();
break;
case 2:
echo bar();
break;
default:
echo "whoeps something is wrong here :)";
}
function foo()
{
$string = 'Hello Foo!';
return $string;
}
function bar()
{
$string = 'Hello bar';
return $string;
}
?>
<form action="bug.php" method="get">
<input type="submit" name="f" value="1">
<input type="submit" name="f" value="2">
</form>
// switch maken
switch ($_GET['f']) {
case 1:
echo foo();
break;
case 2:
echo bar();
break;
default:
echo "whoeps something is wrong here :)";
}
function foo()
{
$string = 'Hello Foo!';
return $string;
}
function bar()
{
$string = 'Hello bar';
return $string;
}
?>
<form action="bug.php" method="get">
<input type="submit" name="f" value="1">
<input type="submit" name="f" value="2">
</form>
Gewijzigd op 14/07/2012 20:16:46 door Bart V B
In het totale programma komen er meerdere buttons, en ook meerdere functies.
Uit wikibooks begrijp ik dat 'case 1:' uitgevoerd wordt als f gelijk is aan 1.
Bedankt !
~Jeroen
Ik heb mijn laatste voorbeeld even geedit zodat je een werkend voorbeeld hebt.
Dat is meer een persoonlijke smaak natuurlijk.
Maargoed je hebt gelijk, 'De gustibus et coloribus non est disputandum'.
Ik heb het geprobeert, maar ik krijg deze error:
'Notice: Undefined index: f' op de regel van 'Switch($_GET['f']) {'
Ik heb natuurlijk eerst deze code in html:
javascript:location.href=pagina1.php?f=1
En daarna pas de Switch, maar nog steeds de error.
Wat kan ik hieraan doen?
~Jeroen
Edit: Ik herinner me $_GET wel van html, als je een form maakt.
Moet ik de html code soms in een form zetten?