你好!我是新的PHP可以请你告诉我答案。我没有获得此PHP程序的输出

时间:2018-02-09 07:26:57

标签: php

为什么我没有输出作为uid? 这是我的索引。

<a href='my_posts.php?u_id=$user_id' class='list-group-item'>My Posts(<?php echo $post_count; ?>)</a>`

这是我的my_posts.php

<?php 
include('function.php');
user_posts(); 
?>

这是我的function.php

<?PHP 
function user_posts(){
global $con;
if(isset($_GET['u_id'])){
$u_id = $_GET['u_id'];
echo $u_id;
 }
}
?>`

4 个答案:

答案 0 :(得分:1)

也许您应该像这样更改代码: <a href='my_posts.php?u_id=<?php echo $user_id;?>' class='list-group-item'>My Posts(<?php echo $post_count; ?>)</a> `

答案 1 :(得分:0)

以下是您的索引的外观:

<?php
$user_id = 12; // Example value
$post_count = 3; // Example value
echo "<a href='my_posts.php?u_id=$user_id' class='list-group-item'>My Posts($post_count)</a>";

您可以删除实施中的$user_id=12$post_count=3

您的my_posts.phpfunction.php可以保持原样。

修改:在您的function.php中,您可以使用is_int()另外检查$_GET['u_id']是否为整数类型

答案 2 :(得分:0)

您提供的代码中有几个错误 $user_id并未在任何地方初始化,正在打印的函数user_posts() 回显 $u_id而不是$user_id

如果要访问函数的输出,在函数内部回显不正确,应改用return。在php manual

中了解有关return的更多信息
<a href='my_posts.php?u_id=**$user_id**' class='list-group-item'>

这种语法本身也是不正确的,php变量需要出现在<?php ?>标记内,否则它们将被视为简单文本。

解决方案:

<?php 
  include('function.php');
  $user_id = user_posts(); // You can now use $user_id to print the output of user_posts()
  echo "<a href='my_posts.php?u_id={$user_id}' class='list-group-item'>My Posts({$post_count})</a>";
?>

function.php

<?PHP 
  function user_posts(){
    global $con;
    if(isset($_GET['u_id'])){
       $u_id = $_GET['u_id'];
       return $u_id; // echo changed to return
    }
  }
?>

答案 3 :(得分:-2)

只需将单引号更改为锚标记中的双引号即可。在单引号中你不能放PHP变量。

<a href="my_posts.php?u_id=$user_id" class='list-group-item'>My Posts(<?=$post_count?>)</a>