Санкционировать, если существует реестр в базе данных

Я пробую санкционировать, если существует реестр в базе данных mysql посредством бдительности с php, но не производит вышеупомянутую бдительность

if (isset($_POST['numExp']) && !empty($_POST['numExp'])) {


    $consulta=$PDO->prepare("SELECT * FROM registro WHERE numExp=".$numExp);
    if (mysql_num_rows($consulta)=0) 
        { 
            echo '<script>
                    alert("ERROR AL REGISTRAR");
                    </script>'; 
        }else{

        $sql=$PDO->prepare("INSERT INTO fechas_tbl (numExp, fecha) VALUES (:numExp,:fecha)");

        $sql->bindParam(':numExp',$numExp);
        $sql->bindParam(':fecha',$fecha);
        $sql->execute();

        }
2
задан 25.06.2016, 08:06
3 ответа

Видя твой код ты сочетаешь драйверы для связи в mysql, если ты используешь PDO, он должен бы быть следующего способа:

if (isset($_POST['numExp']) && !empty($_POST['numExp'])) {
  $numExp = $_POST['numExp'];

  $consulta=$PDO->prepare("SELECT * FROM registro WHERE numExp=".$numExp);
  $consulta->execute();
  $num_rows = $consulta->fetchColumn();

  if ($num_rows==0){ 
    echo '<script>
          alert("ERROR AL REGISTRAR");
          </script>'; 
  }else{
    $sql=$PDO->prepare("INSERT INTO fechas_tbl (numExp, fecha) VALUES (:numExp,:fecha)");

    $sql->bindParam(':numExp',$numExp);
    $sql->bindParam(':fecha',$fecha);
    $sql->execute();

  }
}
1
ответ дан 24.11.2019, 14:04
  • 1
    остается, не функционируя мой уважаемый – matteo 24.06.2016, 23:45
  • 2
    @matteo он выходит у Тебя alg и # 250; n новая ошибка? или останься, не называя рукописного шрифта? – Juan Pinzón 24.06.2016, 23:58
  • 3
    останься, не звоня в рукописный шрифт, я это сменил на простого я начинаю, но также, как кажется, он не входит в условие – matteo 25.06.2016, 00:01
  • 4
    реализуй один print_r ($consulta-и gt; execute ()); чтобы видеть, реализует ли он query правильно. – Juan Pinzón 25.06.2016, 00:03
  • 5
    Он не посылает мне никакой цепи, уже снимите первый if, где он санкционирует, если эта опустошила или нет для того, чтобы он всегда вошел...., кроме того я наполняю формуляр, и если он посылает данные, так что связь хорошо. – matteo 25.06.2016, 00:10

Возможно будьте это, чего тебе не хватает

$consulta=$PDO->prepare("SELECT * FROM registro WHERE numExp=".$numExp);

$consulta->execute();
$result = $consulta->fetchAll(PDO::FETCH_ASSOC);
if($result){//aqui va tu script de error}
3
ответ дан 24.11.2019, 14:04
echo '<script language="javascript">alert("Error.");</script>'; 

Это podrГ, - чтобы помогать тебе.

-2
ответ дан 24.11.2019, 14:04