Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果提交了第一个表单,则页面上的第二个表单不会刷新目标页面_Php_Forms - Fatal编程技术网

Php 如果提交了第一个表单,则页面上的第二个表单不会刷新目标页面

Php 如果提交了第一个表单,则页面上的第二个表单不会刷新目标页面,php,forms,Php,Forms,我有一个页面,从数据库中检索培训广告列表,并显示在表中。和另一个页面,当点击培训名称时,显示有关培训的详细信息。详细信息页面还允许编辑和删除广告。编辑或删除广告时,页面将重定向到广告列表。问题是,如果我编辑了一个广告,而没有访问另一个页面,如果我在重定向到广告列表页面时删除了该广告,则删除的广告仍在列表中。但是如果我没有编辑就删除了广告,或者在编辑后访问了另一个页面,然后返回并删除了广告,一切都正常。抱歉问了这么长的问题。感谢您的任何帮助。 代码如下 广告列表页: $connect = mysq

我有一个页面,从数据库中检索培训广告列表,并显示在表中。和另一个页面,当点击培训名称时,显示有关培训的详细信息。详细信息页面还允许编辑和删除广告。编辑或删除广告时,页面将重定向到广告列表。问题是,如果我编辑了一个广告,而没有访问另一个页面,如果我在重定向到广告列表页面时删除了该广告,则删除的广告仍在列表中。但是如果我没有编辑就删除了广告,或者在编辑后访问了另一个页面,然后返回并删除了广告,一切都正常。抱歉问了这么长的问题。感谢您的任何帮助。 代码如下

广告列表页:

$connect = mysqli_connect($host,$user,$password,$database) or die ("Couldn't connect database");
$sql    =   "SELECT * FROM ad WHERE trainer_id=$trainer_id ORDER BY id desc  ";
$result =   mysqli_query($connect,$sql) or die("Couldn't execute query.");
$count=mysqli_num_rows($result);
                $totalPages=ceil($count/$result_per_page);
$sql    =   "SELECT * FROM ad WHERE trainer_id=$trainer_id ORDER BY id desc LIMIT $start, $result_per_page ";
$result =   mysqli_query($connect,$sql) or die("Couldn't execute query.");
if($count!=0)
{
echo    "<table cols='4'  cellspacing='25'>";

echo    "<th>Training Name</th>";
echo    "<th>Trainer / Training Center</th>";
echo    "<th>Training Dates</th>";
echo    "<th>Registration Starts</th>";
echo    "<th>Viewed</th>";

while($row=mysqli_fetch_assoc($result))
{

extract($row );



echo    "<tr><td  ><a href='personal_ad_details.php?id=$id'>$training_name</a></td>";
echo    "<td >$trainer_name</td>";
echo    "<td >$training_start - $training_end</td>";
echo    "<td >$reg_start</td>";
echo    "<td >$view</td></tr>";

}

echo    "</table>";
广告详情页面编辑和删除:

$connect = mysqli_connect($host,$user,$password,$database) or die ("Couldn't connect database");
if(isset($_GET['id']) && !empty($_GET['id'])){

 $currentID = $_GET['id'];
$sql    =   "SELECT * FROM ad WHERE id=$currentID";
$result =   mysqli_query($connect,$sql) or die("Couldn't execute query.");
$row=   mysqli_fetch_array($result);
extract($row);
echo    "<div id='ad_header'>";
echo    "<h2>
 $training_name</h2>";
echo    "<p>Trainer/Training Center:</p> $trainer_name ";
echo    "<p>Training Date(s):  </p>$training_start - $training_end";
echo    "<p>Registration starts:  </p>$reg_start";
echo "<p>Phone: </p>$mobile";
if($email!=''){echo "<p>Email: </p><a href='mailto:$email'>$email</a>";}
if($website!=''){echo "<p>Web Site: </p><a href='http://$website' target='_blank'>$website</a>";}

echo    "</br>";

echo    "</div>";
echo    "<div id='ad_main'>";

echo    "<p>Training details:</p> </br>"?> <form action="<?php echo htmlspecialchars('personal_ad_details.php')?><?php echo "?id=".$currentID?>" method="post"> <textarea  style="position:relative; left:0%" rows="10" cols="25"  name="Telim_Melumatlari" ><?php echo $training_details; ?></textarea>
<?php 
echo    "</div>";

}
?>
<input style="margin:10px" type="submit" name="update" value="UPDATE"></form>

<?php
if(isset($_POST['update']))
{

    include('misc.inc');


    $connect    =   mysqli_connect($host,$user,$password,$database)
                    or die ("Couldn't connect to database.");
    $sql        =   "UPDATE ad SET training_details='$_POST[Telim_Melumatlari]' WHERE id=$currentID ";
    mysqli_query($connect,$sql) or die("Couldn't execute query");
    $url="personal_ad_list.php";
    echo '<script type="text/javascript">'; 
          echo 'window.location.href="'.$url.'";'; 
          echo '</script>'; 
          echo '<noscript>'; 
          echo '<meta http-equiv="refresh" content="0;url='.$url.'" />'; 
          echo '</noscript>'; exit;

}

?>
<form action="<?php echo htmlspecialchars('personal_ad_details.php')?><?php echo "?id=".$currentID?>" onSubmit="return confirm('Are you sure you want to delete the Ad?');" method="post"><input style="margin:10px; background-color:red" type="submit" name="delete"  value="DELETE AD"></form>
<?php
if(isset($_POST['delete']))
{

    include('misc.inc');


    $connect    =   mysqli_connect($host,$user,$password,$database)
                    or die ("Couldn't connect to database.");
    $sql        =   "DELETE FROM ad WHERE id=$currentID ";
    mysqli_query($connect,$sql) or die("Couldn't execute query");
    $url="personal_ad_list.php";
    echo '<script type="text/javascript">'; 
          echo 'window.location.href="'.$url.'";'; 
          echo '</script>'; 
          echo '<noscript>'; 
          echo '<meta http-equiv="refresh" content="0;url='.$url.'" />'; 
          echo '</noscript>'; exit;

}

?>

您应该检查表单操作url:

<form action="<?php echo htmlspecialchars('personal_ad_details.php')?><?php echo "?id=".$currentID?>" onSubmit="return confirm('Are you sure you want to delete the Ad?');" method="post">

注意:另一个好的做法是,您应该从页面开始提交流程代码:

<?php 
$connect = mysqli_connect($host,$user,$password,$database) or die ("Couldn't connect database");


if(isset($_POST['delete']))
{

    include('misc.inc');


    $connect    =   mysqli_connect($host,$user,$password,$database)
                    or die ("Couldn't connect to database.");
    $sql        =   "DELETE FROM ad WHERE id=$currentID ";
    mysqli_query($connect,$sql) or die("Couldn't execute query");
    $url="personal_ad_list.php";
    echo '<script type="text/javascript">'; 
          echo 'window.location.href="'.$url.'";'; 
          echo '</script>'; 
          echo '<noscript>'; 
          echo '<meta http-equiv="refresh" content="0;url='.$url.'" />'; 
          echo '</noscript>'; exit;

}

if(isset($_POST['update']))
{

    include('misc.inc');


    $connect    =   mysqli_connect($host,$user,$password,$database)
                    or die ("Couldn't connect to database.");
    $sql        =   "UPDATE ad SET training_details='$_POST[Telim_Melumatlari]' WHERE id=$currentID ";
    mysqli_query($connect,$sql) or die("Couldn't execute query");
    $url="personal_ad_list.php";
    echo '<script type="text/javascript">'; 
          echo 'window.location.href="'.$url.'";'; 
          echo '</script>'; 
          echo '<noscript>'; 
          echo '<meta http-equiv="refresh" content="0;url='.$url.'" />'; 
          echo '</noscript>'; exit;

}


if(isset($_GET['id']) && !empty($_GET['id'])){

 $currentID = $_GET['id'];
$sql    =   "SELECT * FROM ad WHERE id=$currentID";
$result =   mysqli_query($connect,$sql) or die("Couldn't execute query.");
$row=   mysqli_fetch_array($result);
extract($row);
echo    "<div id='ad_header'>";
echo    "<h2>
 $training_name</h2>";
echo    "<p>Trainer/Training Center:</p> $trainer_name ";
echo    "<p>Training Date(s):  </p>$training_start - $training_end";
echo    "<p>Registration starts:  </p>$reg_start";
echo "<p>Phone: </p>$mobile";
if($email!=''){echo "<p>Email: </p><a href='mailto:$email'>$email</a>";}
if($website!=''){echo "<p>Web Site: </p><a href='http://$website' target='_blank'>$website</a>";}

echo    "</br>";

echo    "</div>";
echo    "<div id='ad_main'>";

echo    "<p>Training details:</p> </br>"?> <form action="" method="post"> <textarea  style="position:relative; left:0%" rows="10" cols="25"  name="Telim_Melumatlari" ><?php echo $training_details; ?></textarea>
<?php 
echo    "</div>";

}

?>
<input style="margin:10px" type="submit" name="update" value="UPDATE"></form>

<form action="" onSubmit="return confirm('Are you sure you want to delete the Ad?');" method="post"><input style="margin:10px; background-color:red" type="submit" name="delete"  value="DELETE AD"></form>

谢谢你的努力,但没有一个对我有用。当我更新信息并立即删除广告时,培训列表不会刷新您所说的刷新。您正在重定向该页面。如果不工作,则使用位置,并检查数据库您的查询是否工作正常是的,它将重定向到广告列表页面。查询也可以正常工作,因为在重定向到广告列表页面后,我访问了另一个页面并返回到广告列表页面,删除的广告不再出现在列表上尝试:header'Location:personal_ad_list.php';还添加headerCache控件:无缓存;HeaderFragma:无缓存;名单上page@DincaAdrian也许您对解决方案有一个想法:
<?php 
$connect = mysqli_connect($host,$user,$password,$database) or die ("Couldn't connect database");


if(isset($_POST['delete']))
{

    include('misc.inc');


    $connect    =   mysqli_connect($host,$user,$password,$database)
                    or die ("Couldn't connect to database.");
    $sql        =   "DELETE FROM ad WHERE id=$currentID ";
    mysqli_query($connect,$sql) or die("Couldn't execute query");
    $url="personal_ad_list.php";
    echo '<script type="text/javascript">'; 
          echo 'window.location.href="'.$url.'";'; 
          echo '</script>'; 
          echo '<noscript>'; 
          echo '<meta http-equiv="refresh" content="0;url='.$url.'" />'; 
          echo '</noscript>'; exit;

}

if(isset($_POST['update']))
{

    include('misc.inc');


    $connect    =   mysqli_connect($host,$user,$password,$database)
                    or die ("Couldn't connect to database.");
    $sql        =   "UPDATE ad SET training_details='$_POST[Telim_Melumatlari]' WHERE id=$currentID ";
    mysqli_query($connect,$sql) or die("Couldn't execute query");
    $url="personal_ad_list.php";
    echo '<script type="text/javascript">'; 
          echo 'window.location.href="'.$url.'";'; 
          echo '</script>'; 
          echo '<noscript>'; 
          echo '<meta http-equiv="refresh" content="0;url='.$url.'" />'; 
          echo '</noscript>'; exit;

}


if(isset($_GET['id']) && !empty($_GET['id'])){

 $currentID = $_GET['id'];
$sql    =   "SELECT * FROM ad WHERE id=$currentID";
$result =   mysqli_query($connect,$sql) or die("Couldn't execute query.");
$row=   mysqli_fetch_array($result);
extract($row);
echo    "<div id='ad_header'>";
echo    "<h2>
 $training_name</h2>";
echo    "<p>Trainer/Training Center:</p> $trainer_name ";
echo    "<p>Training Date(s):  </p>$training_start - $training_end";
echo    "<p>Registration starts:  </p>$reg_start";
echo "<p>Phone: </p>$mobile";
if($email!=''){echo "<p>Email: </p><a href='mailto:$email'>$email</a>";}
if($website!=''){echo "<p>Web Site: </p><a href='http://$website' target='_blank'>$website</a>";}

echo    "</br>";

echo    "</div>";
echo    "<div id='ad_main'>";

echo    "<p>Training details:</p> </br>"?> <form action="" method="post"> <textarea  style="position:relative; left:0%" rows="10" cols="25"  name="Telim_Melumatlari" ><?php echo $training_details; ?></textarea>
<?php 
echo    "</div>";

}

?>
<input style="margin:10px" type="submit" name="update" value="UPDATE"></form>

<form action="" onSubmit="return confirm('Are you sure you want to delete the Ad?');" method="post"><input style="margin:10px; background-color:red" type="submit" name="delete"  value="DELETE AD"></form>