Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Como corrigir o ERRO no arquivo PHP.?


elias fernandes

Pergunta

BOA NOITE,

Coloquei no meu site uma biblia online php e mysql e ocorreu o seguinte erro:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/crist320/public_html/bibliaonlinep… on line 288

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/crist320/public_html/bibliaonlinep… on line 296.

como identificar e consertar este erro.

O link é http://www.cristianismoautentico.com.br/bibliaonlinephp.

<?php
// requests.php

include "ini_set.php";

if(!isset($_REQUEST['tema'])) {
$tema=1;
} else {
$tema = $_REQUEST['tema'];
}

$arquivo = $_SERVER['PHP_SELF']."?tema=$tema";

if(isset($_REQUEST['sair'])) {
header('location: '.$chamou);
}

if(isset($_REQUEST['cpage'])) {
$cpage = $_REQUEST['cpage'];
}
else {
$cpage = 0; // var de controle de exibicao de capitulo
}

//### PROCESSAMENTO COOKIES E VARIAVEIS PARA VER GUARDADOS
if(isset($_COOKIE['selebiblia'])) {
$sele=$_COOKIE['selebiblia'];
}
else {
$sele="";
}

if(isset($_REQUEST['limpar'])) {
$lifetime=time()-86400; // lifetime -1 dia
setcookie("selebiblia","0",$lifetime);
}

if(isset($_REQUEST['guardar'])) {
$selecao = $_REQUEST['selecao'];
$numrows = count($selecao);
for($i=0;$i<$numrows;$i++) {
if($i==0 and $sele=="") {
$sele=$selecao[$i];
}
else {
$sele.="p".$selecao[$i];
}
}
$lifetime=time()+86400*30; // lifetime 30 dias
setcookie("selebiblia",$sele,$lifetime);
}

if(isset($_REQUEST['mostrar'])) {
if($sele!="") {
$cpage=0;
$paginas = explode("p",$sele);
$numpages = count($paginas);

for($i=0;$i<$numpages;$i++) {
if($i==0) {
$pageV = "sequencia=".$paginas[$i];
// para paginação
$pageVp = "&sequencia=".$paginas[$i];

}
else {
$pageV .= " or sequencia=".$paginas[$i];
// para paginação
$pageVp .= "&sequencia=".$paginas[$i];
}
}

if(isset($pageV)){
$formbusca=$_REQUEST['formbusca'];
$arquivo = $arquivo."&formbusca=$formbusca&lvBiblia=TT_00".$pageVp."&id=1&tema=".$tema;
$id=1;
}
}
}

//### DADOS DE N. DE PAGINAS, ID E LINKS
if(isset($_REQUEST['maxpag'])) {
$maxpag = $_REQUEST['maxpag']; // MÁXIMO DE RESULTADOS POR PÁGINA
}
else {
$maxpag = $ini_maxpag; //40;
}
$maxlnk = $ini_maxlnk; // 40; // MÁXIMO DE LINKS POR PÁGINA
if(isset($_REQUEST['id'])) {
$id = $_REQUEST['id'];
}
if(!isset($id) || $id == '') {
$param = 0;
}
else {
$temp = $id;
$passo1 = $temp - 1;
$passo2 = $passo1*$maxpag;
$param = $passo2;
}


//### PROCESSAMENTO DOS DADOS RECEBIDOS DO FORMULARIO DE BUSCA
if(isset($_REQUEST['formbusca'])) {
$formbusca = $_REQUEST['formbusca'];
$lvBiblia = $_REQUEST['lvBiblia'];
if(isset($_REQUEST['capitulo'])) {
$capitulo = $_REQUEST['capitulo'];
} else {
$capitulo = '';
}
} else {
$formbusca = "Busca";
$lvBiblia = $ini_lvBiblia; //"AT_Jl";
$capitulo = $ini_capitulo; //2;
}

//### ALTERE OS DADOS DE CONEXÃO NO ARQUIVO conecta.php
include "conecta.php";

if ($conexao) {
if (substr($lvBiblia,0,2)=="AT") {
$txtTestam = "testamento='O' ";
}
if (substr($lvBiblia,0,2)=="NT") {
$txtTestam = "testamento='N' ";
}
if (substr($lvBiblia,0,2)=="TT") {
$txtTestam = "1=1 ";
}

//$lvBiblia = $_REQUEST['lvBiblia'];
$str_livro=substr($lvBiblia,3);

$sqlfrase = "SELECT * FROM ".$db_table." WHERE ".$txtTestam;
$arquivo = $arquivo."&formbusca=$formbusca&lvBiblia=".$lvBiblia;
$ligacao = " AND ";

if ($str_livro != "00") {
$sqlfrase = $sqlfrase . $ligacao . "livro='" .$str_livro. "'";
$ligacao = " AND ";
}

if (isset($capitulo) && $capitulo !='') {
$capitulo = addslashes($capitulo);
$sqlfrase = $sqlfrase . $ligacao . "capitulo=".$capitulo;
$arquivo = $arquivo."&capitulo=$capitulo";
$ligacao = " AND ";
}

$versiculo='';
if (isset($_REQUEST['versiculo']) && $_REQUEST['versiculo']!='') {
$versiculo=addslashes($_REQUEST['versiculo']);
$sqlfrase = $sqlfrase . $ligacao . "versiculo=".$versiculo;
$arquivo = $arquivo."&versiculo=$versiculo";
$ligacao = " AND ";
}

if (isset($_REQUEST['plv_not'])) {
$plv_not = addslashes($_REQUEST['plv_not']);
$key=trim($plv_not);
$x2=strlen($key);
$mArray=0;
$palnot[$mArray]="";
for ($i=0; $i<$x2; ++$i) {
$letra=substr($key,$i,1);
if ($letra <> " ") {
$palnot[$mArray] = $palnot[$mArray] . $letra;}
else {
$mArray = $mArray + 1;
$palnot[$mArray]=""; }
}
$mypala = strtolower($palnot[0]);
$sqlfrase_1 = " LCASE(palavra) NOT RLIKE '[[:<:]]".$mypala."[[:>:]]'";

$x2=$mArray+1;
for ($i=0; $i<$x2; ++$i) {
if ($i > 0) {
$mypalai = strtolower($palnot[$i]);
$sqlfrase_1 = $sqlfrase_1 . " and LCASE(palavra) NOT RLIKE '[[:<:]]".$mypalai."[[:>:]]'";
}
}

$sqlfrase = $sqlfrase . $ligacao . "( ".$sqlfrase_1." )";

$arquivo = $arquivo . "&plv_not=$plv_not";

$ligacao = " AND ";

}

$palavra='';
if (isset($_REQUEST['palavra']) && $_REQUEST['palavra']!='') {
$palavra=addslashes($_REQUEST['palavra']);
$key=trim($palavra);
$x=strlen($key);
$mArray=0;
$pala[$mArray]="";
for ($i=0; $i<$x; ++$i) {
$letra=substr($key,$i,1);
if ($letra <> " ") {
$pala[$mArray] = $pala[$mArray] . $letra;}
else {
$mArray = $mArray + 1;
$pala[$mArray]=""; }
}
$mypala = strtolower($pala[0]);
$sqlfrase_1 = " LCASE(palavra) RLIKE '[[:<:]]".$mypala."[[:>:]]'";

$x=$mArray+1;
for ($i=0; $i<$x; ++$i) {
if ($i > 0) {
$mypalai = strtolower($pala[$i]);
$sqlfrase_1 = $sqlfrase_1 . " and LCASE(palavra) RLIKE '[[:<:]]".$mypalai."[[:>:]]'";
}
}
$sqlfrase = $sqlfrase . $ligacao . "( ".$sqlfrase_1." )";

$arquivo = $arquivo . "&palavra=$palavra";

$ligacao = " AND ";

}

if (isset($_REQUEST['plv_exp'])) {
if($palavra != '') $ligacao=" OR ";

$plv_exp = trim(addslashes($_REQUEST['plv_exp']));
$mypala = strtolower($plv_exp);
$sqlfrase_1 = " LCASE(palavra) RLIKE '[[:<:]]".$mypala."[[:>:]]'";
$sqlfrase = $sqlfrase . $ligacao . "( ".$sqlfrase_1." )";
$arquivo = $arquivo . "&plv_exp=$plv_exp";
$ligacao = " AND ";
}

if (isset($_REQUEST['plv_or'])) {
if($palavra != '' ) $ligacao=" OR ";
if(isset($plv_exp)) $ligacao=" OR ";

$plv_or=addslashes($_REQUEST['plv_or']);
$key=trim($plv_or);
$x1=strlen($key);
$mArray=0;
$palor[$mArray]="";
for ($i=0; $i<$x1; ++$i) {
$letra=substr($key,$i,1);
if ($letra <> " ") {
$palor[$mArray] = $palor[$mArray] . $letra;}
else {
$mArray = $mArray + 1;
$palor[$mArray]=""; }
}
$mypala = strtolower($palor[0]);
$sqlfrase_1 = " LCASE(palavra) RLIKE '[[:<:]]".$mypala."[[:>:]]'";

$x1=$mArray+1;
for ($i=0; $i<$x1; ++$i) {
if ($i > 0) {
$mypalai = strtolower($palor[$i]);
$sqlfrase_1 = $sqlfrase_1 . " or LCASE(palavra) RLIKE '[[:<:]]".$mypalai."[[:>:]]'";
}
}

$sqlfrase = $sqlfrase . $ligacao . "( ".$sqlfrase_1." )";

$arquivo = $arquivo . "&plv_or=$plv_or";

$ligacao = " AND ";

}

//##########
$totreg=0;
if (isset($pageV)) {
$sqlfrase = "SELECT * FROM ".$db_table." WHERE ". $pageV ;
$resultadototal = mysql_query($sqlfrase);
$totreg = $totreg + mysql_num_rows($resultadototal);
$totreg_01 = $totreg;
$maxpag = $totreg; // MÁXIMO DE RESULTADOS POR PÁGINA
$maxlnk = $totreg; // MÁXIMO DE LINKS POR PÁGINA
$param = 0;
}


if(!isset($numpages)) {
$sqlfrase = $sqlfrase . " order by sequencia";
$resultadototal = mysql_query($sqlfrase);
$totreg = mysql_num_rows($resultadototal);

if($cpage==1) {
$maxpag=$totreg;
}

$sqlfrasepagina = $sqlfrase . " limit $param,$maxpag";
$resultado = mysql_query($sqlfrasepagina);
$totreg_01 = mysql_num_rows($resultado);
}


$arquivo = $arquivo . "&maxpag=$maxpag";

//#####################################################################
$results_tot = $totreg;
$results_parc = $totreg_01;
$result_div = $results_tot/$maxpag;
$n_inteiro = (int)$result_div;
if ($n_inteiro < $result_div) {
$n_paginas = $n_inteiro + 1;
}
else {
$n_paginas = $result_div;
}
$pg_atual = $param/$maxpag+1;
$reg_inicial = $param + 1;
$pg_anterior = $pg_atual - 1;
$pg_proxima = $pg_atual + 1;

//$time_end = getmicrotime();
//$time = $time_end - $time_start;
//####################################################################

if($n_paginas<=1){ $txtqtpag="página"; } else { $txtqtpag="páginas"; }
}
?>[/codebox]

Obrigado

Editado por ESerra
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Troque:

$resultadototal = mysql_query($sqlfrase);
Por:
$resultadototal = mysql_query($sqlfrase)OR DIE(mysql_error());
E
$resultado = mysql_query($sqlfrasepagina);
Por:
$resultado = mysql_query($sqlfrasepagina)OR DIE(mysql_error());

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado por sua ajuda,

agora a mensagem que surgiu apos eu reiniciar todo o processo foi esta,

No database selected

Mas acontece que o DB está configurada assim:

<?php

## conecta.php

## Database MySQL

## ALTERE as 4 linhas abaixo para sua configuração

$db_host = "localhost"; // servidor mysql - Ex: "mysql01.nomesite.com.br"

$db_user = "crist320_elias"; // usuário - Ex: "nomesite"

$db_pass = "gaji93"; // senha - Ex: "minhasenha"

$db_name = "crist320_biblia"; // database - Ex: "nomesite"

## NÃO MEXER nas linhas abaixo

$db_table = "pt_acf"; // tabela da Bíblia ACF

$conexao=mysql_connect($db_host,$db_user,$db_pass);

mysql_select_db($db_name);

?>

Como proceder?

Elias

Link para o comentário
Compartilhar em outros sites

  • 0

Troque:

$conexao=mysql_connect($db_host,$db_user,$db_pass);

mysql_select_db($db_name);

Por:

$conexao=mysql_connect($db_host,$db_user,$db_pass)OR DIE(mysql_error());

mysql_select_db($db_name)OR DIE(mysql_error());

Link para o comentário
Compartilhar em outros sites

  • 0

Eserra,

Obrigado por sua paciencia,

Access denied for user 'crist320_elias'@'localhost' to database 'crist320_biblia'

Essa é a mensagem que apareceu após a troca na linha do código.

Elias.

Aqui está o codigo como ficou com a alteração:

<?php

## conecta.php

## Database MySQL

## ALTERE as 4 linhas abaixo para sua configuração

$db_host = "localhost"; // servidor mysql - Ex: "mysql01.nomesite.com.br"

$db_user = "crist320_elias"; // usuário - Ex: "nomesite"

$db_pass = "gaji93"; // senha - Ex: "minhasenha"

$db_name = "crist320_biblia"; // database - Ex: "nomesite"

## NÃO MEXER nas linhas abaixo

$db_table = "pt_acf"; // tabela da Bíblia ACF

$conexao=mysql_connect($db_host,$db_user,$db_pass)OR DIE(mysql_error());

mysql_select_db($db_name)OR DIE(mysql_error());

?>

Link para o comentário
Compartilhar em outros sites

  • 0

É só ler a mensagem de erro, o usuário não tem permissão para acessar o BD, entre no painel de controle (geralmente é o cpanel) e relacione o usuário ao banco de dados, só assim ele terá permissão.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...