Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.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上搜索结果并获取id_Php_Mysql_Wamp - Fatal编程技术网

在php上搜索结果并获取id

在php上搜索结果并获取id,php,mysql,wamp,Php,Mysql,Wamp,我已经创建了一个医疗网站,其中包括一个搜索页面,我可以根据不同的医生的专业找到不同的医生。我制作了这个页面,结果以卡片的形式显示出来。在这个例子中,我在php上使用了一个while循环,如下面的代码所示: <?php $db= mysqli_connect("localhost","root","","easydoc"); if(isset($_POST['rech'])) { $spec= $_POST['spec']; $wilaya=$_POST['wilay

我已经创建了一个医疗网站,其中包括一个搜索页面,我可以根据不同的医生的专业找到不同的医生。我制作了这个页面,结果以卡片的形式显示出来。在这个例子中,我在php上使用了一个while循环,如下面的代码所示:

<?php 
 $db= mysqli_connect("localhost","root","","easydoc");
 if(isset($_POST['rech']))
  {  $spec= $_POST['spec'];
      $wilaya=$_POST['wilaya'];
     $sql="select idca from cabinet where wilaya='$wilaya' ";
       $result= mysqli_query($db,$sql);
   $resultcheck = mysqli_num_rows($result);

   if ($resultcheck > 0)
         {     if( $row= mysqli_fetch_assoc($result))
               { 

        $sql="select * from medecin where code= $spec";
        $result= mysqli_query($db,$sql);
        $resultcheck = mysqli_num_rows($result);
        if ($resultcheck > 0){
        while( $rows= mysqli_fetch_assoc($result))
               { $_SESSION['mname']=$rows['lname']; 
               $_SESSION['mfname']=$rows['fname'];  
               $_SESSION['idm']=$rows['idm'];
                $_SESSION['gnd']=$rows['civilite'];
                $_SESSION['fday']=$rows['dday'];
                $_SESSION['lday']=$rows['fday'];
                $_SESSION['fhour']=$rows['dhour'];
                $_SESSION['lhour']=$rows['fhour'];
                $_SESSION['numero']=$rows['num'];
                $sqls="select nom from spec where code=$spec";
                $results=mysqli_query($db,$sqls);
                $rows= mysqli_fetch_assoc($results);
                $_SESSION['spec']=$rows['nom'];

                include("card.php");
                }} else     {?> <h3>
                <?php echo'<span style="color:red">'.'Not found ';} ?></h3>
                <?php

          }
          }else {?><h3><?php echo'<span style="color:red">'.'not Found';}?> 
      </h3><?php }
 ?>


我可以通过点击“voir配置文件”访问配置文件。唯一的问题是我使用的会话在有很多医生的情况下会导致问题,因为它只检索最后一个修改的会话(很明显,因为它处于循环中,所以前一个会话崩溃了…)有人知道如何解决这个问题吗?我的时间不多了,但我想不出一个明确的解决方案

你想在会话中缓存完整的结果吗?是的,有点!!但我不应该!!我也认为你不应该。但当您这样做时,您可以将数据存储在临时变量(例如,
$doctor
)中,然后将其添加到会话中的数组中:
$\u会话['doctors'][]=$doctor谢谢你,我其实不知道我可以在会话中创建数组!!这对我来说是全新的,但谢谢你^^注意:
mysqli
的面向对象接口明显不那么冗长,使代码更易于阅读和审核,并且不容易与过时的
mysql\u查询接口混淆。在你对程序性风格投入太多之前,值得换一种。示例:
$db=new mysqli(…)
$db->prepare(“…”)
过程接口是php4时代引入
mysqli
API时的产物,不应在新代码中使用。