Cakephp 2.x中的Ajax

时间:2018-04-03 16:07:16

标签: php mysql ajax cakephp cakephp-2.0

我有一个问题,我需要在表单中使用ajax,在我的页面中我必须在搜索之后更改标签的颜色,如果数据在数据库中,如果数据存在,我必须更改标签的颜色为红色,如果不是我必须改为绿色,我知道如何在纯PHP中使用它,但我不知道如何在cakephp中做到这一点,如果我在纯php中没有错这是forme:

查看

<form action="prueba.php" method="post">
<input type="text" id="txt_prueba" class="validador" />
<submit value="enviar"/>
</form>

在蛋糕中查看

<?php
  echo $this->Form->create('Prueba', array('url' => 'prueba.php', 'type' => 'post'));

         echo $this->Form->input('textoPrueba', array('label' => false,
            'class' => 'validador'));
   echo $this->Form->end(); ?>

脚本

    $(".validador").on('keyup keypress blur change', function (tecla) {
      $.ajax({
          method: "POST",
          url: "algun.php",
          data: { 
           name: $("#txt_prueba").val();
          }
      })
      .done(function( msg ) {
           if (msg=="Yes"){
                  $("#txt_prueba").css('background-color', 'red');
            } else{
                  $("#txt_prueba").css('background-color', 'green');
            }
       });
});

控制器

require('conexion.php');

$consulta = $_POST['name'];

if (isset($consulta)) {

    $consulta = mysqli_query($conexion, "SELECT * FROM tabla1
    WHERE nombre LIKE '$consulta'");

   $filas = mysqli_num_rows($consulta);

   if ($filas === 0) {
            echo 'Not';

   }else {
     echo 'Yes';
   }
};

1 个答案:

答案 0 :(得分:0)

您是否读过有关CakePHP的内容?你应该阅读一些基础教程

  1. 下载并安装CakePHP(https://book.cakephp.org/3.0/en/installation.html
  2. 使用操作和视图构建您的第一个控制器(https://book.cakephp.org/3.0/en/tutorials-and-examples/cms/articles-controller.html
  3. default.ctp布局文件
  4. 中添加JavaScript AJAX代码
  5. 构建您的第一个表单(https://book.cakephp.org/3.0/en/tutorials-and-examples/cms/articles-controller.html#create-add-template
  6. 运行,如果您遇到问题,请尝试在stackoverflow.com上找到解决方案......