Javascript var vergelijken met PHP IF
Ik heb het onderstaande script gemaakt vanuit een voorbeeld (alleen het stukje java script). Het script geeft een OK/Cancel button weer op de pagina. Ik vraag het script op via een GET vanaf een andere pagina. Deze code staat hier niet onder
Nu is het vreemde dat als ik de Javascript variabele gebruik in het PHP IF/ELSE stuk dan komt de ELSE loop altijd als uitslag en nooit het IF stuk. Het maakt dus niet uit of ik op OK of de CANCEL button klik. Als ik een print doe van het Javascript stuk krijg ik wel de OKE tekst te zien..?
/////////////////OUTPUT
You pressed OK!
ELSE
////////////////
Nu is het vreemde dat als ik de Javascript variabele gebruik in het PHP IF/ELSE stuk dan komt de ELSE loop altijd als uitslag en nooit het IF stuk. Het maakt dus niet uit of ik op OK of de CANCEL button klik. Als ik een print doe van het Javascript stuk krijg ik wel de OKE tekst te zien..?
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
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
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var x;
if (confirm("TEST BOX IS OKE") == true) {
var x = "You pressed OK!";
var jvalue = 'OKE';
<?php $abc = "<script>document.write(jvalue)</script>"?>
} else {
var x = "You pressed Cancel!";
var jvalue = 'CANCEL';
<?php $abc = "<script>document.write(jvalue)</script>"?>
}
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
<?
/*
VARIABLE OUTPUT? COMMENT
$abc = "<script>document.write(jvalue)</script>"
*/
IF ($abc == 'OKE'){
echo "OKE";
}
ELSE{
echo "ELSE";
}
?>
<html>
<body>
<p id="demo"></p>
<script>
var x;
if (confirm("TEST BOX IS OKE") == true) {
var x = "You pressed OK!";
var jvalue = 'OKE';
<?php $abc = "<script>document.write(jvalue)</script>"?>
} else {
var x = "You pressed Cancel!";
var jvalue = 'CANCEL';
<?php $abc = "<script>document.write(jvalue)</script>"?>
}
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
<?
/*
VARIABLE OUTPUT? COMMENT
$abc = "<script>document.write(jvalue)</script>"
*/
IF ($abc == 'OKE'){
echo "OKE";
}
ELSE{
echo "ELSE";
}
?>
/////////////////OUTPUT
You pressed OK!
ELSE
////////////////
- Aar -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 11/05/2015 09:33:29 door - Ariën -
Je haalt de manier van werken met PHP en JavaScript door elkaar. PHP wordt door de server uitgevoerd, en JavaScript door de browser van de bezoeker. PHP zelf doet niks met JavaScript.
Uiteindelijk komt het in jouw script erop neer dat je met PHP niet de waarde van een JavaScript-functie op kan roepen, en dat $abc gewoon gelijk blijft staan aan de string: <script>document.write(jvalue)</script>
Daarom kom je altijd op ELSE uit.
Uiteindelijk komt het in jouw script erop neer dat je met PHP niet de waarde van een JavaScript-functie op kan roepen, en dat $abc gewoon gelijk blijft staan aan de string: <script>document.write(jvalue)</script>
Daarom kom je altijd op ELSE uit.
Gewijzigd op 11/05/2015 09:38:18 door - Ariën -
$abc = "<script>document.write(jvalue)</script>" dit is dus tekst.
if($abc == 'OKE') geeft uiteraard false want er zitten 39 characters in $abc en geen 3.
if($abc == 'OKE') geeft uiteraard false want er zitten 39 characters in $abc en geen 3.
Ik heb het nu anders opgelost. Via het onderstaande.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<html>
<body>
<p id="demo"></p>
<script>
var x;
var r=confirm("OK OF CANCEL");
if (r==true)
{
window.location=index2.php';
}
else
{
x="You pressed Cancel!";
}
</script>
</body>
</html>
<body>
<p id="demo"></p>
<script>
var x;
var r=confirm("OK OF CANCEL");
if (r==true)
{
window.location=index2.php';
}
else
{
x="You pressed Cancel!";
}
</script>
</body>
</html>
Gewijzigd op 11/05/2015 10:07:40 door - Ariën -
Mooi dat het opgelost is, maar zou je in het vervolg code-tags willen gebruiken?
Alvast bedankt!
Alvast bedankt!
Ga ik de volgende keer doen




