Table des matières
回复讨论(解决方案)
Maison développement back-end tutoriel php 新人做一个表单编辑功能的实现,遇到瓶颈求帮助

新人做一个表单编辑功能的实现,遇到瓶颈求帮助

Jun 23, 2016 pm 01:29 PM

<?php	$myconn=mysql_connect("localhost","root","");	mysql_select_db("login_test",$myconn);	if(!$myconn){    	echo "连接失败".mysql_error();	}?><html>	<head>		<title>Edit</title>		<link href="css.css" rel="stylesheet" type="text/css" />	</head>	<body>		<form method="POST">			<table>				<tr class="table_head">				<td>objname</td>				<td>objinfo</td>				</tr>				<?php					$strSql="select * from table_test";					$result=mysql_query($strSql,$myconn);					while($row=mysql_fetch_array($result))					{					$objname1=$row['objname'];					$objinfo1=$row['objinfo'];				?>				<tr>				<td><input type="hidden" name="id" value="<?php echo $row['objid']?>">				<input type="text" name="objname" value="<?php echo $objname1?>" /></td>				<td><input type="text" name="objinfo" value="<?php echo $objinfo1?>" /></td>				</tr>				<?php					}				print_r($_POST);				if(!empty($_POST)){					$objname=$_POST["objname"];					$objinfo=$_POST["objinfo"];					$id = $_POST['id'];					$strSql="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";					$result=mysql_query($strSql,$myconn);					if(!$result){    					die(mysql_error());					}					echo"修改成功!";									}				?>			</table>			<br>			<div style="display:inline;">				<input type="submit" class="button_black"/>				<input type="button" class="button_black" value="返回" onclick="javascript:document.location.href='test.php'"/>		</form>	</body><?php mysql_close($myconn); ?></html>
Copier après la connexion

以上是代码,只能成功修改最后一行,原因是我用while读取后Post选择的总是最后一行,想了有段时间了想不出怎么做
求指导,最好有代码,js可以看懂一点,Jquery咱不会使,毕竟php和js还没完全搞明白


回复讨论(解决方案)

顺带一提,这个页面的前一个页面没有传任何值出来,没有session。
这个页面表单打印全是直接从数据库调的

没人吗

你post的应该只有最后一个记录

input 的name属性名一样,取最后一个

你post的应该只有最后一个记录


这个我知道了,我想求个解决思路或者具体代码来实现我的目的

你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值

你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值



中改成:




input 的name属性名一样,取最后一个


我是用id调的数据,问题在三个column的name都是一样的,只有value不一样,怎么才能把他们分开分别调用


你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值



中改成:





这个思路好!我试试


你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值



中改成:





这么一改怎么用post提数据啊?
$objname=$_POST["objname"];怎么写

你还要能分条保存啊?那分数组。





这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行

你还要能分条保存啊?那分数组。





这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行


<?php	$myconn=mysql_connect("localhost","root","");	mysql_select_db("login_test",$myconn);	if(!$myconn){    	echo "连接失败".mysql_error();	}?><html>	<head>		<title>Edit</title>		<link href="css.css" rel="stylesheet" type="text/css" />	</head>	<body>		<form method="POST">			<table>				<tr class="table_head">				<td>objname</td>				<td>objinfo</td>				</tr>				<?php					$strSql="select * from table_test";					$result=mysql_query($strSql,$myconn);					while($row=mysql_fetch_array($result))					{					$objname1=$row['objname'];					$objinfo1=$row['objinfo'];				?>				<tr>				<td><input type="hidden" name="id[]" value="<?php echo $row['objid']?>">				<input type="text" name="objname[]" value="<?php echo $objname1?>" /></td>				<td><input type="text" name="objinfo[]" value="<?php echo $objinfo1?>" /></td>				</tr>				<?php					}				print_r($_POST);				if(!empty($_POST)){					$i=0;					while($row=mysql_fetch_array($result))					{						$objname=$_POST["objname[i]"];						$objinfo=$_POST["objinfo[i]"]; 						$id = $_POST["id[i]"];						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql,$myconn);						if(!$result2){	    					die(mysql_error());						}						$i++;					}					echo"修改成功!";									}				?>			</table>			<br>			<div style="display:inline;">				<input type="submit" class="button_black"/>				<input type="button" class="button_black" value="返回" onclick="javascript:document.location.href='test.php'"/>		</form>	</body><?php mysql_close($myconn); ?></html>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )

你还要能分条保存啊?那分数组。





这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行


这个数组思路好,赞一个,这样post取值的通过遍历数组就可以区分不同的name:_POST['objname[0],学习了,我想法是通过js修改name值,有点蛋疼!


你还要能分条保存啊?那分数组。





这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行


<?php	$myconn=mysql_connect("localhost","root","");	mysql_select_db("login_test",$myconn);	if(!$myconn){    	echo "连接失败".mysql_error();	}?><html>	<head>		<title>Edit</title>		<link href="css.css" rel="stylesheet" type="text/css" />	</head>	<body>		<form method="POST">			<table>				<tr class="table_head">				<td>objname</td>				<td>objinfo</td>				</tr>				<?php					$strSql="select * from table_test";					$result=mysql_query($strSql,$myconn);					while($row=mysql_fetch_array($result))					{					$objname1=$row['objname'];					$objinfo1=$row['objinfo'];				?>				<tr>				<td><input type="hidden" name="id[]" value="<?php echo $row['objid']?>">				<input type="text" name="objname[]" value="<?php echo $objname1?>" /></td>				<td><input type="text" name="objinfo[]" value="<?php echo $objinfo1?>" /></td>				</tr>				<?php					}				print_r($_POST);				if(!empty($_POST)){					$i=0;					while($row=mysql_fetch_array($result))					{						$objname=$_POST["objname[i]"];						$objinfo=$_POST["objinfo[i]"]; 						$id = $_POST["id[i]"];						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql,$myconn);						if(!$result2){	    					die(mysql_error());						}						$i++;					}					echo"修改成功!";									}				?>			</table>			<br>			<div style="display:inline;">				<input type="submit" class="button_black"/>				<input type="button" class="button_black" value="返回" onclick="javascript:document.location.href='test.php'"/>		</form>	</body><?php mysql_close($myconn); ?></html>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )



$_POST["objname[i]"];这个是不是有问题。



你还要能分条保存啊?那分数组。





这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行


<?php	$myconn=mysql_connect("localhost","root","");	mysql_select_db("login_test",$myconn);	if(!$myconn){    	echo "连接失败".mysql_error();	}?><html>	<head>		<title>Edit</title>		<link href="css.css" rel="stylesheet" type="text/css" />	</head>	<body>		<form method="POST">			<table>				<tr class="table_head">				<td>objname</td>				<td>objinfo</td>				</tr>				<?php					$strSql="select * from table_test";					$result=mysql_query($strSql,$myconn);					while($row=mysql_fetch_array($result))					{					$objname1=$row['objname'];					$objinfo1=$row['objinfo'];				?>				<tr>				<td><input type="hidden" name="id[]" value="<?php echo $row['objid']?>">				<input type="text" name="objname[]" value="<?php echo $objname1?>" /></td>				<td><input type="text" name="objinfo[]" value="<?php echo $objinfo1?>" /></td>				</tr>				<?php					}				print_r($_POST);				if(!empty($_POST)){					$i=0;					while($row=mysql_fetch_array($result))					{						$objname=$_POST["objname[i]"];						$objinfo=$_POST["objinfo[i]"]; 						$id = $_POST["id[i]"];						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql,$myconn);						if(!$result2){	    					die(mysql_error());						}						$i++;					}					echo"修改成功!";									}				?>			</table>			<br>			<div style="display:inline;">				<input type="submit" class="button_black"/>				<input type="button" class="button_black" value="返回" onclick="javascript:document.location.href='test.php'"/>		</form>	</body><?php mysql_close($myconn); ?></html>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )



$_POST["objname[i]"];这个是不是有问题。


改成$i了还是不行,有引号方面的问题吗?




你还要能分条保存啊?那分数组。





这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行


<?php	$myconn=mysql_connect("localhost","root","");	mysql_select_db("login_test",$myconn);	if(!$myconn){    	echo "连接失败".mysql_error();	}?><html>	<head>		<title>Edit</title>		<link href="css.css" rel="stylesheet" type="text/css" />	</head>	<body>		<form method="POST">			<table>				<tr class="table_head">				<td>objname</td>				<td>objinfo</td>				</tr>				<?php					$strSql="select * from table_test";					$result=mysql_query($strSql,$myconn);					while($row=mysql_fetch_array($result))					{					$objname1=$row['objname'];					$objinfo1=$row['objinfo'];				?>				<tr>				<td><input type="hidden" name="id[]" value="<?php echo $row['objid']?>">				<input type="text" name="objname[]" value="<?php echo $objname1?>" /></td>				<td><input type="text" name="objinfo[]" value="<?php echo $objinfo1?>" /></td>				</tr>				<?php					}				print_r($_POST);				if(!empty($_POST)){					$i=0;					while($row=mysql_fetch_array($result))					{						$objname=$_POST["objname[i]"];						$objinfo=$_POST["objinfo[i]"]; 						$id = $_POST["id[i]"];						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql,$myconn);						if(!$result2){	    					die(mysql_error());						}						$i++;					}					echo"修改成功!";									}				?>			</table>			<br>			<div style="display:inline;">				<input type="submit" class="button_black"/>				<input type="button" class="button_black" value="返回" onclick="javascript:document.location.href='test.php'"/>		</form>	</body><?php mysql_close($myconn); ?></html>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )



$_POST["objname[i]"];这个是不是有问题。


改成$i了还是不行,有引号方面的问题吗?


这样想好像不是很好,现在不是可以获得post过来的3个数组了吗,你根据3个数组再组合下,分别插入数据库,不要想着把$_POST[["objname[i]"]插入数据库,而是把$data=array();$data=$_POST["objname"],然后在分别把3个新定义的数组插入数据库。

				if(!empty($_POST)){					while($row=mysql_fetch_array($result))					{						$objname=$_POST["objname[]"];						print_r($_POST["objname[]"]);						print_r($objname);						$objinfo=$_POST["objinfo[]"];						$id = $_POST["id[]"];						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql,$myconn);						if(!$result2){	    					die(mysql_error());						}					}					echo"修改成功!";									}
Copier après la connexion
Copier après la connexion

想了一下,是不是不用$i也行,但是还是取不出post里数组的数据(感觉是个基础问题)
有劳大佬了


你还要能分条保存啊?那分数组。





这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行


<?php	$myconn=mysql_connect("localhost","root","");	mysql_select_db("login_test",$myconn);	if(!$myconn){    	echo "连接失败".mysql_error();	}?><html>	<head>		<title>Edit</title>		<link href="css.css" rel="stylesheet" type="text/css" />	</head>	<body>		<form method="POST">			<table>				<tr class="table_head">				<td>objname</td>				<td>objinfo</td>				</tr>				<?php					$strSql="select * from table_test";					$result=mysql_query($strSql,$myconn);					while($row=mysql_fetch_array($result))					{					$objname1=$row['objname'];					$objinfo1=$row['objinfo'];				?>				<tr>				<td><input type="hidden" name="id[]" value="<?php echo $row['objid']?>">				<input type="text" name="objname[]" value="<?php echo $objname1?>" /></td>				<td><input type="text" name="objinfo[]" value="<?php echo $objinfo1?>" /></td>				</tr>				<?php					}				print_r($_POST);				if(!empty($_POST)){					$i=0;					while($row=mysql_fetch_array($result))					{						$objname=$_POST["objname[i]"];						$objinfo=$_POST["objinfo[i]"]; 						$id = $_POST["id[i]"];						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql,$myconn);						if(!$result2){	    					die(mysql_error());						}						$i++;					}					echo"修改成功!";									}				?>			</table>			<br>			<div style="display:inline;">				<input type="submit" class="button_black"/>				<input type="button" class="button_black" value="返回" onclick="javascript:document.location.href='test.php'"/>		</form>	</body><?php mysql_close($myconn); ?></html>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )



找了半天,你这执行的是$sqlstr,但定义的字符串是$sqlstr2






$limit = 5;
$strSql="select * from news limit ".$limit;
$result=mysql_query($strSql,$myconn);
while($row=mysql_fetch_array($result))
{
$title1=$row['title'];
$link1=$row['link'];
?>





}
print_r($_POST);
if(!empty($_POST)){
for($i=0;$i<$limit;$i++)
{
$title=$_POST["title"][$i];
$link=$_POST["link"][$i];
$id = $_POST["id"][$i];

$strSql = "UPDATE news SET title='".$title."' , link='".$link."' WHERE id='".$id."'";
$result2=mysql_query($strSql,$myconn);
if(!$result2){
die(mysql_error());
}else{
//echo"修改成功!";
}
}


}
?>
title link



我本地测试了一下,这样是可以用的,以上是table里的代码

				if(!empty($_POST)){					while($row=mysql_fetch_array($result))					{						$objname=$_POST["objname[]"];						print_r($_POST["objname[]"]);						print_r($objname);						$objinfo=$_POST["objinfo[]"];						$id = $_POST["id[]"];						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql,$myconn);						if(!$result2){	    					die(mysql_error());						}					}					echo"修改成功!";									}
Copier après la connexion
Copier après la connexion

想了一下,是不是不用$i也行,但是还是取不出post里数组的数据(感觉是个基础问题)
有劳大佬了


我写了print_r($_POST["$objname"]);和print_r($_POST["$objname[]"]); 都没反应

$objname=array();
$bojname=$_POST['bojname'];
$objinfo=array();
$bojname=$_POST['bojname'];
$id=array();
$id=$_POST['id'];
for ($i=0,i $sql='update table_test set objname='.$objname[$i].',objinfo='.$objinfo[$i].' where objid='.$id[$i];
}
试试这个思路


用 $objname=$_POST["objname"][$i]; 吧。






$limit = 5;
$strSql="select * from news limit ".$limit;
$result=mysql_query($strSql,$myconn);
while($row=mysql_fetch_array($result))
{
$title1=$row['title'];
$link1=$row['link'];
?>





}
print_r($_POST);
if(!empty($_POST)){
for($i=0;$i<$limit;$i++)
{
$title=$_POST["title"][$i];
$link=$_POST["link"][$i];
$id = $_POST["id"][$i];

$strSql = "UPDATE news SET title='".$title."' , link='".$link."' WHERE id='".$id."'";
$result2=mysql_query($strSql,$myconn);
if(!$result2){
die(mysql_error());
}else{
//echo"修改成功!";
}
}


}
?>
title link



我本地测试了一下,这样是可以用的,以上是table里的代码


原来是这样写的,受教了

用 $objname=$_POST["objname"][$i]; 吧。

一下子没想到这个,$_POST["objname"][$i]这样的得到post的值,应该就可以插入了,问题应该可以解决了。

用 $objname=$_POST["objname"][$i]; 吧。


多谢大佬帮助,基本上问题都解决了,还差一个定循环里i的终止值为表单长度,这个我自己来吧
真是太感谢了!



用 $objname=$_POST["objname"][$i]; 吧。

一下子没想到这个,$_POST["objname"][$i]这样的得到post的值,应该就可以插入了,问题应该可以解决了。


也多些这位仁兄的热心帮助!太感动了

<?php	$myconn=mysql_connect("localhost","root","");	mysql_select_db("login_test",$myconn);	if(!$myconn){    	echo "连接失败".mysql_error();	}?><html>	<head>		<title>Edit</title>		<link href="css.css" rel="stylesheet" type="text/css" />	</head>	<body>		<form method="POST">			<table>				<tr class="table_head">				<td>objname</td>				<td>objinfo</td>				</tr>				<?php					$strSql="select * from table_test";					$result=mysql_query($strSql,$myconn);					while($row=mysql_fetch_array($result))					{					$objname1=$row['objname'];					$objinfo1=$row['objinfo'];				?>				<tr>				<td><input type="hidden" name="id[]" value="<?php echo $row['objid']?>">				<input type="text" name="objname[]" value="<?php echo $objname1?>" /></td>				<td><input type="text" name="objinfo[]" value="<?php echo $objinfo1?>" /></td>				</tr>				<?php					}				print_r($_POST);				if(!empty($_POST)){					for($i=0;$i< mysql_num_rows($result);$i++){						$objname=$_POST["objname"][$i];						print_r($objname);						$objinfo=$_POST["objinfo"][$i];						print_r($objinfo);						$id = $_POST["id"][$i];						print_r($id);						$strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'";						$result2=mysql_query($strSql2,$myconn);						if(!$result2){	    					die(mysql_error());						}					}					echo"修改成功!";									}				?>			</table>			<br>			<div style="display:inline;">				<input type="submit" class="button_black"/>				<input type="button" class="button_black" value="返回" onclick="javascript:document.location.href='test.php'"/>		</form>	</body><?php mysql_close($myconn); ?></html>
Copier après la connexion

这里是最终成型代码
感谢fedcgfedbe和csjazqx的热心帮助!



用  $objname=$_POST["objname"][$i]; 吧。


多谢大佬帮助,基本上问题都解决了,还差一个定循环里i的终止值为表单长度,这个我自己来吧
真是太感谢了!
咱不是大佬。。做这行也没多久的。只是在帮助别人的时候自己也能温习。
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Mar 14, 2025 am 11:42 AM

L'extension PHP Client URL (CURL) est un outil puissant pour les développeurs, permettant une interaction transparente avec des serveurs distants et des API REST. En tirant parti de Libcurl, une bibliothèque de transfert de fichiers multi-protocol très respectée, PHP Curl facilite Efficient Execu

12 meilleurs scripts de chat PHP sur Codecanyon 12 meilleurs scripts de chat PHP sur Codecanyon Mar 13, 2025 pm 12:08 PM

Voulez-vous fournir des solutions instantanées en temps réel aux problèmes les plus pressants de vos clients? Le chat en direct vous permet d'avoir des conversations en temps réel avec les clients et de résoudre leurs problèmes instantanément. Il vous permet de fournir un service plus rapide à votre personnalité

Expliquez le concept de liaison statique tardive en PHP. Expliquez le concept de liaison statique tardive en PHP. Mar 21, 2025 pm 01:33 PM

L'article traite de la liaison statique tardive (LSB) dans PHP, introduite dans PHP 5.3, permettant une résolution d'exécution de la méthode statique nécessite un héritage plus flexible. Problème main: LSB vs polymorphisme traditionnel; Applications pratiques de LSB et perfo potentiel

Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Apr 05, 2025 am 12:04 AM

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Caractéristiques de sécurité du cadre: protection contre les vulnérabilités. Caractéristiques de sécurité du cadre: protection contre les vulnérabilités. Mar 28, 2025 pm 05:11 PM

L'article traite des fonctionnalités de sécurité essentielles dans les cadres pour se protéger contre les vulnérabilités, notamment la validation des entrées, l'authentification et les mises à jour régulières.

Frameworks de personnalisation / d'extension: comment ajouter des fonctionnalités personnalisées. Frameworks de personnalisation / d'extension: comment ajouter des fonctionnalités personnalisées. Mar 28, 2025 pm 05:12 PM

L'article examine l'ajout de fonctionnalités personnalisées aux cadres, en se concentrant sur la compréhension de l'architecture, l'identification des points d'extension et les meilleures pratiques pour l'intégration et le débogage.

Comment envoyer une demande post contenant des données JSON à l'aide de la bibliothèque Curl de PHP? Comment envoyer une demande post contenant des données JSON à l'aide de la bibliothèque Curl de PHP? Apr 01, 2025 pm 03:12 PM

Envoyant des données JSON à l'aide de la bibliothèque Curl de PHP dans le développement de PHP, il est souvent nécessaire d'interagir avec les API externes. L'une des façons courantes consiste à utiliser la bibliothèque Curl pour envoyer le post� ...

See all articles