Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

designmix

Problema

Recommended Posts

galera estou com esse erro

 

Tipo de erro:Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)[MySQL][ODBC 3.51 Driver][mysqld-3.23.49-nt]You have an error in your SQL syntax near '(*) AS NRecords FROM cadastro_id ' at line 1/dpi/cadastro/agenda.asp, line 11
estou tentando fazer paginação

 

ASP [/tr][tr]

<!--#include file="../_conn/bib_conexao.asp" -->

 

<%

 

call abre_conexao

 

 

Set rsMAX = Server.CreateObject("ADODB.Recordset")

rsMAX.Open "SELECT COUNT(*) AS NRecords FROM cadastro", conn

 

NRecords = rsMAx("NRecords")

rsMAX.Close

Set rsMAX = Nothing

 

If Request.QueryString("pagina") <> "" then

pagina = Request.QueryString("pagina")

End If

 

If pagina = "" then

pagina = 1

End If

 

If pagina < 1 Then

Response.Write"<html><h1>Erro 69</h1></html>"

Response.End

End If

 

 

NumReg = 5 * (pagina - 1)

strSQL = "SELECT * FROM cadastro ORDER BY nome_id"

Set rsProdutos = conn.Execute (strSQL)

 

 

resto = NRecords mod 5

 

IF resto > 0 then

paginas = int(NRecords / 5) + 1

Else

pagina = NRecords / 5

End If

pagina = pagina + 1

%>

 

<html>

<head>

<title>Acessorios</title>

</head>

 

<body topmargin="0" leftmargin="0" bgcolor="#FFFFFF">

<table border="0" cellpadding="0" cellspacing="0" width="100%" background="images">

<tr>

<td width="100%"> </td>

</tr>

</table>

<table width="75%" border="0" align="center" cellpadding="3" cellspacing="0">

<tr>

<td width="84%" valign="top" aling="center" height="291%">

<p align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2" ><b>Página<font color="#0066FF">

<%= int (pagina) -1%></font> de <font color="#006699"> <%= paginas%></font></b></font></p>

<p align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Total de produtos na loja <font color="#CC0000">

<%= NRecords%></font></font></b></p>

<table border="0" cellpadding="2" width="480" bordercolor="#000000" cellspacing="3">

<tr>

<td width="40%" bgcolor="#471555"><font color="#FFFFFF">Nº</font></td>

<td width="40%" bgcolor="#471555"><font size="2"

face="Arial" color="#FFFFFF">PRODUTOS</font></td>

<td width="20%" bgcolor="#032A64">

<p align="center"><font size="2" face="Arial"

color="#FFFFFF"> R$ UNITARIOS</font><big>

</big>

</td>

</tr>

 

<%

 

If NumReg > 0 Then

For LinkTemp = 1 to NumReg

if rsProdutos.EOF = Flase then rsProdutos.MoveNext

Next

End If

regAtual = 1

 

While Not rsProdutos.EOF AND regAtual <= 5

 

%>

<tr>

<td width="40%" bgcolor="#EEEEEE" height="13">

<div align="left"><small><font face="Arial"><%= rsProdutos ("empresa_id")%><strong></strong></font></small>

</div>

</td>

<td width="40%" bgcolor="#EEEEEE"><small><font face="Arial"><strong><%= rsProdutos ("nome_id")%></strong></font></small></td>

<td width="20%" align="right" bgcolor="#EEEEEE" height="13"><font face="arial" color="#FF0000">

<%= rsProdutos("tel_id")%>

</font></td>

</tr>

<%

rsProdutos.MoveNext

MunReg = NumReg + 1

regAtual = regAtual + 1

Wend

%>

</table>

 

<table align="center">

<tr>

<%

 

For Linktemp = 1 to paginas

%>

<td><a href="paginacao.asp?pagina=<%= LinkTemp%>"><%= LinkTemp%></a>

</td>

<%next%>

</tr>

</table></td>

</tr>

</table>

<%

rsProdutos.Close

set rsProdutos = Nothing

fecha_conexao

%>

<p align="center">

<td width="16%" align="center" valign="top">

<p> </p>

<p>

</td>

<td width="10" align="center" valign="top"></td>

</body>

</html>

 

 

[/tr]

:blink: :wacko:

grato pela ajuda http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara ta errado isso mesmo tente assim"SELECT COUNT(*) AS NRecords FROM cadastro"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pela sintaxe que se esta usando e pelo que vi, você esta tentando pegar o total de registros e para isso você tem que usar o COUNT mesmo....

Compartilhar este post


Link para o post
Compartilhar em outros sites

galera.. ja arrumei o erro que falei de cima .. mais agora .. olha isso

Tipo de erro:Microsoft OLE DB Provider for ODBC Drivers (0x80020009)Operação OLE DB de várias etapas gerou erros. Verifique cada valor de status OLE DB. Nada foi executado./dpi/cadastro/agenda.asp

:wacko: :blink: Estou tentando ser se arrumo mais quem poder me ajudar agradeço grato t+ http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho que isto ta erradoresto = NRecords mod 5IF resto > 0 then paginas = int(NRecords / 5) + 1Elsepagina = NRecords / 5End Ifpagina = pagina + 1acho que no else seria paginas....bem mas se isto for uma paginação em MYSQL como você disse no outro topico, eh melhor usar LIMIT como tambem foi dito lá...

Compartilhar este post


Link para o post
Compartilhar em outros sites

galera olha so que f***... esse aqui funciona

 

que vou o script que peguei da minha apostila .. da impacta é o mesmo

ASP [/tr][tr]

 

<!--#include file="bib_conexao.asp" -->

 

<%

Dim Conexao, rsprodutos, strSQL, rsMAX, LinkTemp, regAtual

Dim NRecords, pagina, paginas, NumReg, resto, id

 

abre_conexao

 

'conta aqtos produtos tem na tabela de produtos

Set rsMAX = Server.CreateObject("ADODB.Recordset")

rsMAX.Open "SELECT Count(*) AS NRecords FROM Produtos", Conexao

 

NRecords = rsMAx("NRecords")

rsMAX.Close

Set rsMAX = Nothing

 

If Request.QueryString("pagina") <> "" then

pagina = Request.QueryString("pagina")

End If

 

If pagina = "" then

pagina = 1

End If

 

If pagina < 1 Then

Response.Write"<html><h1>Erro 69</h1></html>"

Response.End

End If

'Determina avariavel NumReg, atribuindo a ela o valor total de

'registo por pagina multiplicado pela qtde de pagina

 

NumReg = 5 * (pagina - 1)

strSQL = "SELECT * FROM Produtos ORDER BY id"

Set rsProdutos = Conexao.Execute (strSQL)

 

'Dividee o total de pagina por, 20 que é a qtde de registro por pagina

resto = NRecords mod 5

 

IF resto > 0 then

paginas = int(NRecords / 5) + 1

Else

pagina = NRecords / 5

End If

pagina = pagina + 1

%>

 

<html>

<head>

<title>Acessorios</title>

</head>

 

<body topmargin="0" leftmargin="0" bgcolor="#FFFFFF">

<table border="0" cellpadding="0" cellspacing="0" width="100%" background="images">

<tr>

<td width="100%"> </td>

</tr>

</table>

<table width="75%" border="0" align="center" cellpadding="3" cellspacing="0">

<tr>

<td width="84%" valign="top" aling="center" height="291%">

<p align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2" ><b>Página<font color="#0066FF">

<%= int (pagina) -1%></font> de <font color="#006699"> <%= paginas%></font></b></font></p>

<p align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Total de produtos na loja <font color="#CC0000">

<%= NRecords%></font></font></b></p>

<table border="0" cellpadding="2" width="480" bordercolor="#000000" cellspacing="3">

<tr>

<td width="40%" bgcolor="#471555"><font color="#FFFFFF">Nº</font></td>

<td width="40%" bgcolor="#471555"><font size="2"

face="Arial" color="#FFFFFF">PRODUTOS</font></td>

<td width="20%" bgcolor="#032A64">

<p align="center"><font size="2" face="Arial"

color="#FFFFFF"> R$ UNITARIOS</font><big>

</big>

</td>

</tr>

 

<%

'Este if só será executado a partir da segunda página

If NumReg > 0 Then

For LinkTemp = 1 to NumReg

if rsProdutos.EOF = Flase then rsProdutos.MoveNext

Next

End If

regAtual = 1

'Define aqtde de vezes que o loop irá executar

While Not rsProdutos.EOF AND regAtual <= 5

'move para o proximo registro se ainda houver

%>

<tr>

<td width="40%" bgcolor="#EEEEEE" height="13">

<div align="left"><small><font face="Arial"><%= rsProdutos ("id")%><strong></strong></font></small>

</div>

</td>

<td width="40%" bgcolor="#EEEEEE"><small><font face="Arial"><strong><%= rsProdutos ("Produto")%></strong></font></small></td>

<td width="20%" align="right" bgcolor="#EEEEEE" height="13"><font face="arial" color="#FF0000">

<%= FormatNumber (rsProdutos("VRL_Unitario"),2)%>

</font></td>

</tr>

<%

rsProdutos.MoveNext

MunReg = NumReg + 1

regAtual = regAtual + 1

Wend

%>

</table>

 

<table align="center">

<tr>

<%

'monta um link para as paginas de acordo o total ded paginas que houver

For Linktemp = 1 to paginas

%>

<td><a href="paginacao.asp?pagina=<%= LinkTemp%>"><%= LinkTemp%></a>

</td>

<%next%>

</tr>

</table></td>

</tr>

</table>

<%

rsProdutos.Close

set rsProdutos = Nothing

fecha_conexao

%>

<p align="center">

<td width="16%" align="center" valign="top">

<p> </p>

<p>

</td>

<td width="10" align="center" valign="top"></td>

</body>

</html>

[/tr]

 

o que esta dando pau eu do mudei apenas o db e os nome dos campo ai fica dando pau

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá uma olhada nessa linha... tem alguma coisa diferente nela...

 

MunReg = NumReg + 1

regAtual = regAtual + 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

esta dando esse erro

 

Microsoft OLE DB Provider for ODBC Drivers (0x80020009)Operação OLE DB de várias etapas gerou erros. Verifique cada valor de status OLE DB. Nada foi executado./dpi/cadastro/paginacao.asp
o script esta assim

 

ASP [/tr][tr]

<!--#include file="bib_conexao.asp" -->

 

<%

 

 

call abre_conexao

 

 

Set rsMAX = Server.CreateObject("ADODB.Recordset")

rsMAX.Open "SELECT COUNT(*) AS NRecords FROM cadastro", conn

 

NRecords = rsMAx("NRecords")

rsMAX.Close

Set rsMAX = Nothing

 

If Request.QueryString("pagina") <> "" then

pagina = Request.QueryString("pagina")

End If

 

If pagina = "" then

pagina = 1

End If

 

If pagina < 1 Then

Response.Write"<html><h1>Erro 69</h1></html>"

Response.End

End If

 

 

NumReg = 5 * (pagina - 1)

strSQL = "SELECT * FROM cadastro ORDER BY nome_id"

Set rsProdutos = conn.Execute (strSQL)

 

 

resto = NRecords mod 5

 

IF resto > 0 then

paginas = int(NRecords / 5) + 1

Else

pagina = NRecords / 5

End If

pagina = pagina + 1

%>

 

<html>

<head>

<title>Acessorios</title>

</head>

 

<body topmargin="0" leftmargin="0" bgcolor="#FFFFFF">

<table border="0" cellpadding="0" cellspacing="0" width="100%" background="images">

<tr>

<td width="100%"> </td>

</tr>

</table>

<table width="75%" border="0" align="center" cellpadding="3" cellspacing="0">

<tr>

<td width="84%" valign="top" aling="center" height="291%">

<p align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2" ><b>Página<font color="#0066FF">

<%= int (pagina) -1%></font> de <font color="#006699"> <%= paginas%></font></b></font></p>

<p align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Total de produtos na loja <font color="#CC0000">

<%= NRecords%></font></font></b></p>

<table border="0" cellpadding="2" width="480" bordercolor="#000000" cellspacing="3">

<tr>

<td width="40%" bgcolor="#471555"><font color="#FFFFFF">Nº</font></td>

<td width="40%" bgcolor="#471555"><font size="2"

face="Arial" color="#FFFFFF">PRODUTOS</font></td>

<td width="20%" bgcolor="#032A64">

<p align="center"><font size="2" face="Arial"

color="#FFFFFF"> R$ UNITARIOS</font><big>

</big>

</td>

</tr>

 

<%

 

If NumReg > 0 Then

For LinkTemp = 1 to NumReg

if rsProdutos.EOF = Flase then rsProdutos.MoveNext

Next

End If

regAtual = 1

 

While Not rsProdutos.EOF AND regAtual <= 5

 

%>

<tr>

<td width="40%" bgcolor="#EEEEEE" height="13">

<div align="left"><small><font face="Arial"><%= rsProdutos ("empresa_id")%><strong></strong></font></small>

</div>

</td>

<td width="40%" bgcolor="#EEEEEE"><small><font face="Arial"><strong><%= rsProdutos ("nome_id")%></strong></font></small></td>

<td width="20%" align="right" bgcolor="#EEEEEE" height="13"><font face="arial" color="#FF0000">

<%= rsProdutos("tel_id")%>

</font></td>

</tr>

<%

rsProdutos.MoveNext

MunReg = NumReg + 1

regAtual = regAtual + 1

Wend

%>

</table>

 

<table align="center">

<tr>

<%

 

For Linktemp = 1 to paginas

%>

<td><a href="paginacao.asp?pagina=<%= LinkTemp%>"><%= LinkTemp%></a>

</td>

<%next%>

</tr>

</table></td>

</tr>

</table>

<%

rsProdutos.Close

set rsProdutos = Nothing

fecha_conexao

%>

<p align="center">

<td width="16%" align="center" valign="top">

<p> </p>

<p>

</td>

<td width="10" align="center" valign="top"></td>

</body>

</html>

 

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.