簡體   English   中英

如何使用php動態更改html鏈接的id?

[英]how to dynamically change the id of a html link with php?

我有一個頁面上的鏈接,我將鏈接發送到數據庫,然后在另一頁上我從數據庫中檢索鏈接。 我只能向數據庫發送四個鏈接,我是這樣做的,但我希望這四個鏈接具有不同的 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。

這是一些我的代碼: 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
}

                       ?>

謝謝!!!

歡迎來到 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 頁面。

希望我理解你的問題:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM