Jump to content


Photo

Query String Usando Sql


  • Faça o login para participar
2 replies to this topic

#1 benini

benini

    Novato no fórum

  • Usuários
  • 18 posts
  • Sexo:Não informado

Posted 17/06/2004, 05:22

Bem, uso query string mas com mysql...

Tenho no bando de dados chamado controle 1 tabela:
tabela links com os campos id e url


Uso o codigo abaixo para puxar os links cadastrado na tabela links:
<?
include "conexao.php";
$db = mysql_select_db("controle");
$sql = "Select * From links where id='$_GET[id]' ";
$r = mysql_query($sql);
if(!is_numeric($_GET["id"])) { include "el.php"; }
else { $q=mysql_query("SELECT * FROM links WHERE id='".$_GET["id"]."'");
$f=mysql_fetch_assoc($q);
include $f['url'];
}
?>

E no site, nos links coloco index.php?id=1
Funciona belezinha...

O que quero é colocar mais um tabela no banco controle, o nome da tabela seria estatisticas e teria os campos ids e url... no links que puxariam o ids e url desta tabela seria index.php?ids=1, ate ai blz, o que nao to conseguindo é justamente colocar no codigo acima mais esta função... pra que ele funcione do jeito que esta ai normal, mas tambem puxando os links desta segunda tabela...

Ja tentei colocar um monte de coisa ai, mas so consigo erros...

So pra nao deixar duvidas... isso ai funciona como uma query string normal... daquela do tipo index.php?area=blablabla... so que no meu ai é pelo mysql... o index.php?id=1 puxa a pagina que se encontra no caminho /home/xxx/public_html/principal.php que esta cadastrado no campo url...

Se algum puder dar uma força ai...

T+
TORCIDA FALANGE AZUL
Londrina - Paraná - Brasil
http://www.falangeazul.com.br

-----------------------------------
Os Beto - Tocando Gostoso
-----------------------------------

#2 Balala

Balala

    What you want for yourself?

  • Ex-Admins
  • 3357 posts
  • Sexo:Não informado
  • Localidade:Jaraguá do Sul - SC
  • Interesses:http://forum.wmonline.com.br/index.php?showtopic=5792

Posted 17/06/2004, 08:04

Mas criar uma tabela com os mesmos campos? Qual o motivo? Mas deveria funcionar da mesma maneira:

PHP
<?php
include "conexao.php"; // se estiver na mesma pagina nao precisa incluir
$db = mysql_select_db("controle"); // e tambem nao precisa escolher o db

if ( is_int($_GET['id']) ) {
$sql2 = "SELECT * FROM estatisticas WHERE ids = " . $_GET['id'];
$r2 = mysql_query($sql);
include
$r2['url'];
}
?>


Bom, você estava comparando o $_GET['id'] se ele é numérico ou não, iria funcionar bem, mas o campo id na tabela não é INT? Se for passado não numérico, vai dar erro do mesmo jeito.
Balala - Admin Geral Webfórum - Retired
Twitter
Stop Spreading Lies!
Posted Image

#3 Troyan

Troyan

    12 Horas

  • Usuários
  • 285 posts
  • Sexo:Não informado
  • Localidade:Mesquita, Rio de Janeiro - Brasil
  • Interesses:Sou programador ASP, PHP, Javascript e ActionScript, além de ser curioso em JSP, ColdFusion e XSL. Trabalho com XML, XHTML, adoro webstandards e a W3C. Também trabalho com tableless e RIA's.<br><br> Formas de contato:<br> Email: dnunes[at]gmail[dot]com<br> ICQ: 68102402<br> MSN: troyandev@hotmail.com<br><br> -------------------------------------<br> - Rio de Janeiro, Brazil<br> - Troyan

Posted 18/06/2004, 01:31

Sö pra avisar, em carater de "à quem interessar possa", NUNCA coloque um valor vindo de formulário, principalmente de querystring(!), direto numa query. Fazendo isso, você estará servindo um banquete ao nosso famigerado e ilustre amigo SQL Injection. Toda vez que um valor vindo de form for pra uma query, passe-o por uma função pra formatá-lo corretamente, no mínimo um htmlentities(), utf8_encode() ou html_special_chars().

[]s

Edição feita por: Troyan, 18/06/2004, 01:36.

~~ ~
diego nunes
web engineer

~ ~~




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq