0

我们有一个使用普通旧 php 5 的艺术家数据库。数据库是 Mysql。我想让选择查询工作,但没有调试方法(print_r 或 var_dump)对我有帮助。也许 mysql_query 和 mysql_num_rows 由于某种原因没有返回任何结果?请查看下面的代码以了解我们正在使用什么。提前感谢您的关注。

<!-- BUSCA ARTISTAS 
 -->
<!DOCTYPE html>
<?php
session_start();
include_once 'pessoa/pessoa.php';
include_once 'pessoa/artista.php';
include_once 'pessoa/pessoafisica.php';
include_once 'pessoa/endereco.php';
include_once 'pessoa/email.php';
include_once 'pessoa/telefone.php';
include_once 'banco/banco.php';
include_once 'pessoa/especialidade.php';

?>
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Busca</title>
        <style type="text/css" media="all">

            table {
                width:800px;
                border-collapse: collapse;
                border: 2px solid #999;
                margin:0 auto;
                font-size: small;
            }
            caption { 
                text-align: right;
                margin-bottom: 0.8em;
                border-bottom: 1px solid #333;
                padding-right: 0.1em;
            }
            thead tr th {
                text-align:center;
                border-bottom: 2px solid #999;
                border-left: 1px solid #999;
            }
            tr td, tr th {
                padding: 2px 1px;
                text-align:left;
                font-size: 1em;
                border: 1px dotted #333;
            } 
            tfoot tr td {
                text-align:center;
                border-top: 2px solid #999;
            }
            /* CSS para efeitos jQuery */
            .impar {background:#add6ef;}
            .par {background:#d6e2e5;}
            /* Fim CSS para efeitos jQuery */
        </style>
        <link rel="stylesheet" type="text/css" href="estiloformulario.css" />
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
        <script type="text/javascript" src="js/jquery.maskedinput.js"></script>
        <script type="text/javascript" >
            $(document).ready(function() {
                $('table#horario tbody tr:odd').addClass('impar');          
                $('table#horario tbody tr:even').addClass('par');           
            });  
        </script>
    </head>

    <body>
        <?php
            if (!isset($_SESSION['funcionario'])){
                $user = unserialize($_SESSION['funcionario']);
                echo "<p>Você não esta autorizado para acessar essa area do sistema</p>";
            }  // verificação para o login
        ?> 
        <div class="global-div">

            <form method="post" action="buscahabilidade.php" > 
                <fieldset>

                    <legend>Busca Habilidade</legend></br>
                        <label  for="descricao" accesskey="">Habilidade:</label>
                            <select name="descricao" id="descricao">
                            <option value="descricao"> >> Selecione </option>
                                <?php
                                Banco::conecta();

                                //clausula sql
                                $sql = "SELECT especialidade.cod_especialidade,especialidade.descricao FROM especialidade ORDER BY especialidade.descricao";

                                //executa a clausula sql
                                $executar = mysql_query($sql)or die("Falha na execução da instrução SQL! ");

                                //Verifica se a busca retornou resultado!
                                while($row = mysql_fetch_array($executar))
                                {
                                    echo "<option value='".$row['cod_especialidade']."'>".$row['descricao']."</option>";
                                }
                                ?>

                            </select> 
                            <button name="cadastrar" type="submit">Buscar</button>
                        </label>

                </fieldset>
            </form>


            <?php
            if (isset($_POST['cadastrar'])) {
                $sql1 = "SELECT pessoa.nome,pessoa.cod_pessoa,pessoa.ativo,pessoa.data_cadastro,especialidade.descricao
                FROM pessoa INNER JOIN artista ON pessoa.cod_pessoa=artista.pessoa_cod_pessoa INNER JOIN artista_has_especialidade
                ON artista.cod_artista=artista_has_especialidade.artista_cod_artista INNER JOIN especialidade ON artista_has_especialidade.especialidade_cod_especialidade=especialidade.cod_especialidade
                WHERE especialidade.descricao LIKE '%".$_POST['descricao']."%'order by 1";

                // executa a query no banco de dados
                $executar = mysql_query($sql1)or die ("Query failed: " . mysql_error() . " Actual query: " . $sql1);;
                var_dump(mysql_query($sql1));
                var_dump(mysql_num_rows($executar));

                // conta o total de resultados encontrados
                $total = mysql_num_rows($executar) or die(mysql_error()); 

                // mensagem se o resultado for vazio
                // define valores se o resultado não for vazio

                echo $total;

                // gera o loop com os resultados
                echo"<table id=\"horario\">";
                echo"<caption>";
                    echo"Resultados da busca.";
                echo"</caption>";
                echo"<thead>";
                    echo"<tr id=\"horizontal\">";
                        echo"<th>Nome</th>";
                        echo"<th scope=\"col\">Código</th>";
                        echo"<th scope=\"col\">Detalhes</th>";
                        echo"</tr>";
                echo" </thead>";
                echo" <tfoot>";
                  echo"<tr>";
                       echo" <td colspan=\"6\">Resultados da busca.</td>";
                   echo" </tr>";
                echo"</tfoot>";
                echo"<tbody>"; // provavelmente o while começa aqui 
                $i=0;
                $codigocarregaartista=array();
                while ($linha = mysql_fetch_array($executar)) {
                var_dump($linha);
                echo $linha['nome']." ".$linha['cod_pessoa'];
                       $i++;
                       echo" <tr>";
                       echo" <th scope=\"row\">".$linha['nome']."</th>";
                       echo" <td>".$linha['cod_pessoa']."</td>";
                       $codigocarregaartista[$i]=$linha['cod_pessoa'];                 
                       echo"  <td><a href=\"layoutartista.php?cod=".$codigocarregaartista[$i]."\">Detalhes/Altera</a></td>";
                       // link dinamico para alteracliente.php
                       echo" </tr>";
                       }
                 echo" </tbody>";
            echo"</table>";
            }
            ?>
        </div>

        <!-- ListBox stuff == .js + SpryValidationSelect.css(integrated estiloformulario.css)-->
        <script type="text/javascript">
            var spryselect1 = new Spry.Widget.ValidationSelect("spryselect1");
        </script>

    </body>
</html>
4

0 回答 0