<?php
if($_GET['st'] !=''){
$st= $_GET['st'];
?>
<script>
var st = <?php echo $st; ?>
if(st !=''){
console.log('got function here');
}
</script>
<?php }?>
我想表明如果$ st不等于空,那么做别的事做别的但是给出错误
pro.php?st = foo:13 Uncaught SyntaxError:意外的令牌if。
答案 0 :(得分:0)
试试这个,
<?php
if($_GET['st'] !=''){
$st= $_GET['st'];
?>
<script>
var st = "<?php echo $st; ?>"; // assign var st properly with ("st";)
if(st !=''){
console.log('got function here');
}
</script>
<?php
}
?>
答案 1 :(得分:0)
而不是st = <?php echo $st; ?>
使用st = "<?php echo $st; ?>";
,您需要关闭PHP和javascript的语句。
<?php
if($_GET['st'] !=''){
$st= $_GET['st'];
?>
<script>
var st = "<?php echo $st; ?>";
if(st !=''){
console.log('got function here');
}
</script>
<?php }?>
答案 2 :(得分:0)
您需要在引号内存储st
,类似:
var st = '<?=$st?>';
但在此之前,您还需要使用isset()
来检查$_GET['st']
是否设置以及!empty()
条件。
示例:强>
<?php
if(isset($_GET['st']) && !empty($_GET['st'])){
$st = $_GET['st'];
?>
<script>
var st = '<?=$st?>';
if(st != ''){
console.log('got function here');
}
</script>
<?php
}
?>
请注意,您已经检查了PHP
中的空值,不知道为什么要在javascript
中再次使用它。