Ir para conteúdo

POWERED BY:

Arquivado

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

sylar_head

[Resolvido] Erro de sintaxe

Recommended Posts

Alguém ajuda aí! Eu fiz um codigo que pega na querystring a acao do BD (Se vai alterar ou excluir um registro)

 

http://forum.imasters.com.br/public/style_emoticons/default/natal_ohmy.gif

 

O erro é de sintaxe, Source line: case "delfile"

 

Codigo abaixo

 

ASP
<!--#include file="conectar.asp"-->

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

<html>

<head>

<title>Area de administrar o eXtreme games</title>

</head>

<body bgcolor="#045979">

<font face="Verdana">

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

<hr size="1" color="#FFFFFF"><br>

<% AbreConexao

acao = request.querystring("acao")

select case acao %>

<% case "delfile"

 If Request.form("enviado") = "sim" Then

Sql = "DELETE * FROM jogosonlines WHERE id=" & Request.Form("jogo") & " "

Conexao.Execute(Sql) %>

<div align="center">

  <table border="1" cellpadding="3" cellspacing="0" width="421" bordercolorlight="#FFFFFF">

    <tr>

      <td bgcolor="#0688B9">

        <p align="center"><font size="3" color="#FFFFFF">Jogo Deletado</font></p>

      </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

        <font color="#A8E6FD" size="2">O jogo "<%=Request.Form("jogo")%>" foi deletado

        </td>

    </tr>

      </table>

</div>

<% else %>

<form method="POST" action="file.asp?acao=delfile">

<input type="hidden" name="enviado" value="sim">

<div align="center">

  <table border="1" cellpadding="3" cellspacing="0" width="421" bordercolorlight="#FFFFFF">

    <tr>

      <td bgcolor="#0688B9">

        <p align="center"><font size="3" color="#FFFFFF">Deletar Jogo</font></p>

      </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

        <font color="#A8E6FD" size="2">Arquivo: <select size="1" name="jogo">

                          <% Sql = "SELECT * FROM jogosonlines"

                          Set rs = Conexao.Execute(Sql)

                          while not rs.EOF%>

                          <option value="<%=rs("id")%>"><%=rs("nome")%></option>

                          <% rs.MoveNext

                          wend %>

              </select>

        </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

      <p align="center">

      <input type="submit" value="Deletar" name="B1">

      </p>

      </td>

    </tr>

      </table>

</div>

</form>

<% end if %>

 

<% case "modfile"

passo = request.querystring("passo")

select case passo

case "1"

Sql = "SELECT * FROM jogosonlines WHERE id = "& Request.Form("jogo") & " "

Set rs = Conexao.Execute(Sql) %>

<form method="POST" action="file.asp?acao=modfile&passo=2">

<input type="hidden" name="enviado" value="sim">

<input type="hidden" name="id" value="<%=Request.Form("jogo")%>">

<div align="center">

  <table border="1" cellpadding="3" cellspacing="0" width="421" bordercolorlight="#FFFFFF">

    <tr>

      <td bgcolor="#0688B9">

        <p align="center"><font size="3" color="#FFFFFF">Alterar Jogo</font></p>

      </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

          <div align="center">

            <center>

          <table border="0" cellpadding="0" cellspacing="0">

          <tr>

            <td><font color="#A8E6FD" size="2">Nome:</td>

            <td><input type="text" name="nome" size="20" value="<%=rs("nome")%>">

              </td>

          </tr>

          <tr>

            <td><font color="#A8E6FD" size="2">Categoria:</td>

            <td><select size="1" name="categoria">

                          <% Sql1 = "SELECT * FROM categoriajogoson"

                          Set rs1 = Conexao.Execute(Sql1)

                          while not rs1.EOF%>

                          <option value="<%=rs1("categoria")%>"><%=rs1("nome")%></option>

                          <% rs1.MoveNext

                          wend %>

              </select></td>

          </tr>

          <tr>

            <td><font color="#A8E6FD" size="2">URL:</font></td>

            <td><input type="text" name="url" size="20" value="<%=rs("url")%>"></td>

          </tr>

          <tr>

            <td><font color="#A8E6FD" size="2">Fonte:</td>

            <td><input type="text" name="fonte" size="20" value="<%=rs("fonte")%>"></td>

          </tr>

          <tr>

            <td><font color="#A8E6FD" size="2">Instruções:</font></td>

            <td><input type="text" name="instrucoes" size="20" value="<%=rs("instrucoes")%>"></td>

          </tr>

          <tr>

            <td valign="top"><font color="#A8E6FD" size="2">Descrição:</font></td>

            <td><textarea rows="2" name="descricao" cols="20"><%=rs("descricao")%></textarea></td>

          </tr>

        </table>

            </center>

            </div>

        </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

      <p align="center">

      <input type="submit" value="Alterar" name="B1">

      </p>

      </td>

    </tr>

      </table>

</div>

</form>

 

<% case "2" %>

<% Sql = "UPDATE jogosonlines SET nome = '" & Request.Form("nome") & "',categoria = '" & Request.Form("categoria") & "',url = '" & Request.Form("url") & "',descricao = '" & Request.Form("descricao") & "',instrucoes = '" & Request.Form("instrucoes") & "',fonte = '" & Request.Form("fonte") & "' WHERE id = " & Request.Form("id")  & " "

Conexao.Execute(Sql) %>

<div align="center">

  <table border="1" cellpadding="3" cellspacing="0" width="421" bordercolorlight="#FFFFFF">

    <tr>

      <td bgcolor="#0688B9">

        <p align="center"><font size="3" color="#FFFFFF">Jogo Alterado</font></p>

      </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

        <font color="#A8E6FD" size="2">Jogo "<%=Request.Form("nome")%>"

        alterado</font>

        </td>

    </tr>

      </table>

</div>

 

<% case else %>

<form method="POST" action="file.asp?acao=modfile&passo=1">

<div align="center">

  <table border="1" cellpadding="3" cellspacing="0" width="421" bordercolorlight="#FFFFFF">

    <tr>

      <td bgcolor="#0688B9">

        <p align="center"><font size="3" color="#FFFFFF">Selecione o Jogo</font></p>

      </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

        <font color="#A8E6FD" size="2">jogo: </font><select size="1" name="arquivo">

                          <% Sql = "SELECT * FROM jogosonlines"

                          Set rs = Conexao.Execute(Sql)

                          while not rs.EOF%>

                          <option value="<%=rs("id")%>"><%=rs("nome")%></option>

                          <% rs.MoveNext

                          wend %>

              </select>

        </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

      <input type="submit" value="Selecionar" name="B1">

        </td>

    </tr>

      </table>

</div>

</form>

<% end select %>

 

<% case else

Response.Redirect "admin.asp"

end select %>

</body>

</html>

<% end if %>

 

 

Dá uma ajuda

http://forum.imasters.com.br/public/style_emoticons/default/natal_noel.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema está neste trecho:

 

select case acao %>
<% case "delfile"

Por fechar a tag de script antes de completar o select, o ASP entende dois comandos separados ao verificar o código. Então, é como se você estivesse chamando uma sub chamada case, em vez de testar um caso dentro do seu select.

 

select case acao
		case "delfile"

Corrigindo este trecho, e verificando se este erro não se repete, seu script vai funcionar.

 

Espero ter ajudado.

 

[]'z

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas o erro é bem nesta instunção mesmo?

 

nao é o caso ainda mas no fim do codigo tem um End If que nao encontrei o seu If original

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse erro eu concertei ele nesse segundo, mas agora ta dando certo até selecionar e jogo e colocar pra modificar aí da um outro erro

 

Script error detected at line 136.

Source line: Set rs = Conexao.Execute(Sql)

Description: [Microsoft][Driver ODBC para Microsoft Access] Syntax error (missing operator) in query expression 'id ='.

Compartilhar este post


Link para o post
Compartilhar em outros sites

aparentemente ta faltando o valor do id

 

de onde voce resgata ele?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sql

"DELETE * FROM jogosonlines WHERE id=" & Request.Form("jogo") & " "

 

Form que está trabalhando de acordo com o select case

<!--asp--><div class='highlight_syntax_top'>ASP</div><div class='highlight_syntax_main'><!--asp1--><div class="asp"><form method="POST" action="file.asp?acao=delfile">

<input type="hidden" name="enviado" value="sim">

<div align="center">

  <table border="1" cellpadding="3" cellspacing="0" width="421" bordercolorlight="#FFFFFF">

    <tr>

      <td bgcolor="#0688B9">

        <p align="center"><font size="3" color="#FFFFFF">Deletar Jogo</font></p>

      </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

        <font color="#A8E6FD" size="2">Arquivo: <select size="1" name="jogo">

                          <% Sql = "SELECT * FROM jogosonlines"

                          Set rs = Conexao.Execute(Sql)

                          while not rs.EOF%>

                          <option value="<%=rs("id")%>"><%=rs("nome")%></option>

                          <% rs.MoveNext

                          wend %>

              </select>

        </td>

    </tr>

        <tr>

      <td bgcolor="#0688B9" width="411">

      <p align="center">

      <input type="submit" value="Deletar" name="B1">

      </p>

      </td>

    </tr>

      </table>

</div>

</form></div><!--asp2--></div><!--asp3-->

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas como voce recupera aquele id?

 

o nome do campo é jogo

 

veja na outra pagina como voce recupera isto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ahá! Descobri o erro! Obrigado pela atenção

 

ASP
<select size="1" name="arquivo">

                          <% Sql = "SELECT * FROM jogosonlines"

                          Set rs = Conexao.Execute(Sql)

                          while not rs.EOF%>

                          <option value="<%=rs("id")%>"><%=rs("nome")%></option>

                          <% rs.MoveNext

                          wend %>

              </select>

 

Eu coloquei pro nome do form ser "arquivo" ao invés de jogo

 

 

E não tem outra pagina mário, tudo é feito em apenas uma pagina!

 

 

Editem lá o assunto coloquem "[resolvido]"

http://forum.imasters.com.br/public/style_emoticons/default/natal_w00t.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perfeito tiozinho

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.