首页 > 解决方案 > 如何使用php动态更改html链接的id?

问题描述

我有一个页面上的链接,我将链接发送到数据库,然后在另一个页面上我从数据库中检索链接。我只能将四个链接发送到数据库,我是这样做的,但是我希望这四个链接具有不同的 ID,但即使用户向数据库发送不同的链接,ID 也应该相同。例如:如果链接是:

<a onclick='cover'>ACCOUNTING</a>
<a onclick='cover'>maths</a>
<a onclick='cover'>english</a>
<a onclick='cover'>ict</a>

ID应该是这样的:

<a onclick='cover' id='10'>ACCOUNTING</a>
<a onclick='cover' id='11'>maths</a>
<a onclick='cover' id='12'>english</a>
<a onclick='cover' id='13'>ict</a>

即使发送的链接不同,四个链接的 id 仍应为 10、11、12 和 13。

这是一些 mycode: page1:

if(isset($_POST['English']))
{
  //his is to make the categpories shows show in the maijn page
   headerr("Location:layout.php?userid=${id}&name=${name}&id=1");
 array_push($sub,mysqli_real_escape_string($conn,"<li><a onclick='cover'>ENGLISH</a></li>"));
$plo = implode(" ",$sub);
 $query = "UPDATE `user` SET `sub`='$plo' WHERE `id` = '$id'"; $clicked = $clicked +1;
 $result = mysqli_query($conn,$query);
 if($result)
 {
  echo "done";
  $name .= 'eng,';
 }
 else{
  echo "not done";
  echo $query;
 }
 
}
if(isset($_POST['maths']))
{
  headerr("Location:layout.php?userid=${id}&name=math&id=1");
  array_push($sub,mysqli_real_escape_string($conn,"<li><a onclick='cover'>MATHEMATICS</a></li>"));
$plo = implode(" ",$sub);
   $query = "UPDATE `user` SET `sub`='$plo' WHERE `id` = '$id'"; $clicked = $clicked +1;
 $result = mysqli_query($conn,$query);
 if($result)
 {
  echo "done";
       $name .= 'math,';
 }
 else{
  echo "not done";
  echo $query;
 }
}
if(isset($_POST['accounting']))
{
  headerr("Location:layout.php?userid=${id}&name=accounting&id=1");
  array_push($sub,mysqli_real_escape_string($conn,"<li><a onclick='cover'>ACCOUNTING</a></li>"));
$plo = implode(" ",$sub);
  $query = "UPDATE `user` SET `sub`='$plo' WHERE `id` =$id"; $clicked = $clicked +1;
 $result = mysqli_query($conn,$query);
 if($result)
 {
  echo "done";
     $name .= 'accounting,';
 }
 else{
  echo "not done";
  echo $query;
 }
}

第2页:

                      <?php 
                      $userid = $_GET['userid'];
        $name =$_GET['name'];
        $cler = explode(',',$name);
        $i= 0;
        $dog =array_filter($cler);
        
$query ="SELECT sub from user where id = '$userid'";
$result = mysqli_query($conn,$query);
if($row = mysqli_fetch_assoc($result))
{

$t = $row['sub'];
   echo $i;
echo $t;
   
//this is to change the position of the quetion
}

                       ?>

谢谢!!!

标签: javascriptphphtmlcss

解决方案


欢迎来到 SO :)

我不确定我是否会 100% 关注这个问题。如果我理解正确,您希望 id 与从数据库中获取的不同链接保持相同?我会在数据库中为链接的 id 创建一个属性,而不是使用增量或主键,只是一个 int 值。当链接被提取到 html 文档中时,您使用 id 属性值作为元素的 id。为了避免意外的 id,我会将用户输入到数据库中的特定属性限制为 10、11、12 和 13,例如一个 select 元素,

使用 php 创建链接,如:

    <?php echo 
   "<a onclick='cover' id='database_var_accounting'>ACCOUNTING</a> 
    <a onclick='cover' id='database_var_maths'>maths</a>
    <a onclick='cover' id='database_var_englist'>english</a>
    <a onclick='cover' id='database_var_ict'>ict</a>" 
?> 

id 是您使用数据库中的值分配的变量,然后只需将 php 脚本导入您想要菜单的 html/php 页面。

希望我理解你的问题:)


推荐阅读