Php 删除并填写信息
您好,我有这个表,我想能够删除Pnumber和tituloPnumber上的数据。 我已经做了删除查询,如果用户选择了最后一个Pnumber它就更容易了。 现在我必须做一个循环,如果用户删除中间的数据,它会自动填充1个字段 例如:Php 删除并填写信息,php,mysql,for-loop,Php,Mysql,For Loop,您好,我有这个表,我想能够删除Pnumber和tituloPnumber上的数据。 我已经做了删除查询,如果用户选择了最后一个Pnumber它就更容易了。 现在我必须做一个循环,如果用户删除中间的数据,它会自动填充1个字段 例如: IIDD | ID | Num_Slides | P1 | P2 | P3 | P4 | P5 | tituloP1 | tituloP2 | tituloP3 | tituloP4 | tituloP5 1 | 4 | 5 | 1 |
IIDD | ID | Num_Slides | P1 | P2 | P3 | P4 | P5 | tituloP1 | tituloP2 | tituloP3 | tituloP4 | tituloP5
1 | 4 | 5 | 1 | 2 | 4 | 5 | 2 |Sometext |Sometext2 |Sometext3 |Sometext4 |Sometext5 |
如果用户选择删除P5,那么我只需要用0填充P5,用空白字段和Num_幻灯片4填充tituloP5
但是如果用户选择删除P3,我必须将P5设置为0,将Titolop5设置为空白字段,将P4设置为2,将Titolop4设置为Sometext5,将P3设置为5,将Titolop3设置为Sometext4,这样信息将在没有p'gaps的情况下更新
到目前为止,我已经为Cicele准备好了这个,但不起作用
if (isset($_POST['Confirmar'])){
$max = 5;
$menos1 = $max - 1;
for ($i = 4; $i >= 1; $i--){
$sqlya="SELECT P$i, tituloP$i FROM slider_settings where slider_settings.ID = 4";
for ($k = $menos1; $k <= $menos1; $k++){
$inserirya = "UPDATE slider_settings SET P$k ='P$i', tituloP$k ='tituloP$i' where slider_settings.ID = 4";
$con1 = $connect->query($sqlya);
$com2 = $connect->query($inserirya);
}
}
}
//这将提供U更新查询
function createUpdateString($position,&$str){
if($position==5){
return false;
}
$nextPosition = $position+1;
$str[] = " P{$position} = P{$nextPosition}";
$str[] = " tituloP{$position} = tituloP{$nextPosition}";
return createUpdateString($nextPosition,$str);
}
//举起你的手
//更新p3和tituloP3值0和
$updatePostion = 3;
$str = array();
//This function will create query string for you
createUpdateString($updatePostion,$str);
$queryString = implode(",",$str);
if(!empty($queryString)){
$query = "UPDATE TABLE_NAME SET ".$queryString ."where slider_settings.ID = 4";
}
了解防止SQL注入的准备语句您意识到您正在尝试更新整个数据库database@Fred-ii-更新的Sorry WHERE's WHERE?@Fred ii-edited~问题是如果我删除第3页而不填充第4页的信息,网站将显示一个空页面