[英]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.