Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] PHP OO problema Lista/menu en el select

Estas en el tema de problema Lista/menu en el select en el foro de PHP en Foros del Web. Buenas, estoy aprendiendo y tengo una duda. intento hacer un select segun elija en un Lista/menu pero no me sale el select. la estructura de ...
  #1 (permalink)  
Antiguo 10/06/2013, 13:41
 
Fecha de Ingreso: enero-2011
Mensajes: 6
Antigüedad: 13 años, 3 meses
Puntos: 0
problema Lista/menu en el select

Buenas, estoy aprendiendo y tengo una duda.

intento hacer un select segun elija en un Lista/menu pero no me sale el select.

la estructura de la base de datos es.

Código PHP:
-- Estructura de tabla para la tabla `RANKING`
--

CREATE TABLE IF NOT EXISTS `RANKING` (
  `
NICKvarchar(20COLLATE latin1_spanish_ci NOT NULL,
  `
NIVELint(2) DEFAULT NULL,
  `
OROint(11) DEFAULT NULL,
  `
MUERTESint(6) DEFAULT NULL,
  `
NPCSMUERTOSint(6) DEFAULT NULL,
  `
ARMADAvarchar(10COLLATE latin1_spanish_ci NOT NULL,
  `
TIPOvarchar(10COLLATE latin1_spanish_ci NOT NULL,
  `
CLANvarchar(20COLLATE latin1_spanish_ci NOT NULL,
  `
RAZAvarchar(10COLLATE latin1_spanish_ci NOT NULL,
  `
CLASEvarchar(10COLLATE latin1_spanish_ci NOT NULL,
  `
DUELOSint(5) DEFAULT NULL,
  `
PCLANint(20) DEFAULT NULL,
  
FULLTEXT KEY `NICK` (`NICK`)
ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_spanish_ci
el config.php
Código PHP:
 <?php
$host 
"localhost"// servidor
$db "BASEDATOS";//Base de datos
$user "Usuario";//usuario
$pw ""//contraseña
?>
El Index.php

Código PHP:
  
<form name="form1" method="post" action="resultado.php" id="cdr">
  <
p>Buscar Por:
    <
label for="tbusca"></label>
    <
select name="Pbusca" id="Pbusca">
      <
option value="nick">Nombre del Jugador</option>
      <
option value="clan">Nombre del Clan</option>
      <
option value="raza">Raza del Jugador</option>
      <
option value="clase">Clase del Jugador</option>
      <
option value="duelos">Duelos Ganados</option>
      <
option value="pclan">Puntos Clan</option>
    </
select>
    <
input name="busca"  type="text" id="busqueda" />
    <
input type="submit" name="Submit" value="buscar" />
    <
br />
    
Ordenar Por
    <
label for="Orde"></label>
    <
select name="Orden1" id="orden1">
      <
option value="nick">Nombre del Jugador</option>
      <
option value="clan">Nombre del Clan</option>
      <
option value="nivel">Nivel</option>
      <
option value="muertes">Jugadores Muerto</option>
      <
option value="oro">Oro</option>
     </
select>
    <
label for="select"></label>
    <
select name="select" id="select">
      <
option>Desendente</option>
      <
option>Asendente</option>
    </
select>
  </
p>
  <
p><br />
Si no escribes nada en la casilla nombrebuscar&aacutea todos los jugadoresclanesrazasetc. <br />
Busca jugadores y crea tus propios r&aacute;nkings ordenando por el campo adecuado.</p>
</
form>
 <
p
el resultado.php

Código PHP:
 
  <?php
  
include("config.php"); //cambia

  

$busca="";
$busca=$_POST['busca'];
$Pbusca=$_POST['Pbusca'];//De que parte Busca
$Orden1=$_POST['Orden1'];//orden

$link mysql_connect($host$user$pw);// si haces conexion desde internnet usa 3 parametros si es a nivel local solo 2
mysql_select_db($db$link);//nombre de la base de datos
if($busca!=""){

//"Select (campos) from (tabla) (where) (order)"; 

$busqueda=mysql_query("SELECT * FROM RANKING WHERE '%".$Pbusca."%' LIKE '%".$busca."%' ORDER BY  '%".$Orden1."%' DESC LIMIT 10");

$num=mysql_num_rows($busqueda); //Cantidad de registros

?>
<table width="1182" border="1" id="tab">
   <tr align="center">
     <td width="178">Nick </td>
     <td width="45" valign="middle">Nivel</td>
     <td width="70">Oro</td>
     <td width="88" valign="middle">User <br />
     Muertos</td>
     <td width="88" valign="middle">Npc <br />
     Muertos</td>
     <td width="162">Armada</td>
     <td width="109" valign="middle">Criminal<br />
     Ciudadano</td>
     <td width="107">Clan</td>
     <td width="75">Raza</td>
     <td width="72">Clase</td>
     <td width="46">Duelos</td>
     <td width="66">Puntos<br>
Clan</td>
   </tr>
 
<?php


echo "Total resultado: ".$num
echo 
"   Despliego Ordenar Por Datos recividos: ".$Orden1//lo que recibo de Lista/menu
echo "   Despliego Buscar Por Datos recividos: " .$Pbusca//lo que recibo de Lista/menu
while($f=mysql_fetch_array($busqueda)){
echo 
'<tr>';
echo 
'<td width="19">'.$f['NICK'].'</td>';
echo 
'<td width="61">'.$f['NIVEL'].'</td>';
echo 
'<td width="157">'.$f['ORO'].'</td>';
echo 
'<td width="221">'.$f['MUERTES'].'</td>';
echo 
'<td width="176">'.$f['NPCSMUERTOS'].'</td>';
echo 
'<td width="73">'.$f['ARMADA'].'</td>';
echo 
'<td width="118">'.$f['TIPO'].'</td>';
echo 
'<td width="103">'.$f['CLAN'].'</td>';
echo 
'<td width="67">'.$f['RAZA'].'</td>';
echo 
'<td width="107">'.$f['CLASE'].'</td>';
echo 
'<td width="107">'.$f['DUELOS'].'</td>';
echo 
'<td width="107">'.$f['PCLAN'].'</td>';


}

}

 
?>
</table>

<p>&nbsp;</p>
<p align="center"><a href="index.php" onclick="return confirm">Volver</a></p>
lo que me falla es el

Código PHP:
$busqueda=mysql_query 
alguien sabria decirme como arreglarlo.

Un saludo Y gracias.
  #2 (permalink)  
Antiguo 10/06/2013, 15:17
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Respuesta: problema Lista/menu en el select

tu lista "select" debería ser:
Código HTML:
<label for="select"></label> 
    <select name="select" id="select"> 
      <option value="DESC">Desendente</option> 
      <option value="ASC">Asendente</option> 
    </select> 
luego tu consulta sql debería quedar así:
Código PHP:
$busqueda=mysql_query("SELECT * FROM RANKING WHERE $Pbusca LIKE '%$busca%' ORDER BY  $Orden1 LIMIT 10"); 
no te olvides de validar los datos que recibes del formulario antes de ejecutar tu consulta
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #3 (permalink)  
Antiguo 11/06/2013, 06:12
 
Fecha de Ingreso: enero-2011
Mensajes: 6
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: problema Lista/menu en el select

Buenas.
Gracias ya esta solucionado

el unico problema q tengo esque si dejo el campo vacio no me saca ningun dato.

un saludo

Última edición por scorpio12; 11/06/2013 a las 08:59
  #4 (permalink)  
Antiguo 11/06/2013, 10:15
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Respuesta: problema Lista/menu en el select

Cita:
el unico problema q tengo esque si dejo el campo vacio no me saca ningun dato.
a eso me refería con la validación, debes comprobar que no recibas datos vacíos y otras validaciones para evitar, por ejemplo, inyecciones sql, entre otros
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #5 (permalink)  
Antiguo 11/06/2013, 14:35
 
Fecha de Ingreso: enero-2011
Mensajes: 6
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: problema Lista/menu en el select

Buenas soy un poco novato en esto
abria algo donde pueda ver lo q me dices algunos ejemplo o algo para saver que tengo que arreglar para evitar las inyeccciones sql. y si me mandan el dato en blanco salga lso datos.

un saludo
Cita:
Iniciado por jcxnet Ver Mensaje
a eso me refería con la validación, debes comprobar que no recibas datos vacíos y otras validaciones para evitar, por ejemplo, inyecciones sql, entre otros

Etiquetas: mysql, registro, select, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:05.