| ||||
consulta selectiva tengo un mapa que tiene unos cuantos puntos indicativos que señalan donde estan situadas unas minas, entonces, como hago cuando un usuario haga clin en unos de esos puntos aparezca los datos de la mina?
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia |
| |||
Tienes que mapear la imagen, esto es cosa del html, pero si te soy sincero no me acuerdo de la sintaxis. Lo que si se es que en la imagen defines por coordenadas varios enlaces, y cada enlace de este tipo tendrá un href de este tipo: href='info.php?Mina=1' href='info.php?Mina=2' ..... Asi en el info.php segun el valor de $_GET["Mina"] muestras una info u otra Mira, que he encontrado la sintaxix: <MAP NAME="mapa"> <AREA SHAPE="rect" COORDS="1,1,75,46" HREF="info.php?Mina=1"> <AREA SHAPE="rect" COORDS="76,1,136,46" HREF="info.php?Mina=2"> </MAP> <IMG SRC="TuMapa.gif" USEMAP="#mapa"> |
| |||
Hola, Cuando usas un campo tipo imagen en un formulario como boton submit (http://www.w3.org/TR/html4/interact/forms.html#h-17.4.1), PHP recibe las coordenadas del click (http://www.php.net/manual/en/languag...s.external.php). Con esas coordenadas podrias saber donde han pinchado en la imagen. Pero enviaria los datos tanto hayan pinchado en una mina como en un delfin. Si quieres que solo puedan pinchar en las minas, tendras que definir las areas como te ha comentado kurlax (podrias generar mediante PHP ese HTML a partir de los datos de las coordenadas de las minas). Saludos.
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| ||||
Gracias por las sugerencias fueron muy buenas.
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia |
| ||||
ya me lie un poco, os cuento. tengo un archivo llamado mapa.php donde tengo el mapa....... pues estas lineas: Código PHP: y en el archivo infomina.php despues de hacer la conexion a la base de datos tengo: Código PHP: Gracias. ------------------- Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in infomina.php on line 12 Esta lineas 12 se corresponde con: $patri = mysql_fetch_array($select_patri);
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia |
| |||
Hola, El mensaje te dice: parametro que has pasado a mysql_fetch_array() no es un valor valido de id de resultado de MySQL. Es decir, el valor del parametro es invalido. ¿De donde has sacado el valor? De mysql_query(). En www.php.net/mysql_query lees que mysql_query() devuelve false si se ah producido un error en MySQL cuando ha intentado ejecutar la consulta. Entonces es que tu consulta ha generado un error en MySQL. ¿COmo ver el mensaje de error? Con mysql_error() (www.php.net/mysql_error), por ejemplo: Código PHP:
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| |||
Lo mas probable es que estes cogiendo mal la variable que pasas a la consulta. Prueba con $_GET["nficja"] y si esto no te va porque tu version php es antigua prueba con $HTTP_GET_VARS["nnficha"] |
| ||||
el error que da es Error. MySQL dice: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '\'Ca-02\'' at line 1 la version de mysql es MySQL 4.0.17
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia Última edición por pereztroff; 02/11/2004 a las 04:10 |
| |||
Mete la cadena de la consulta en una variable y en el die() muestra esa variable para ver que consulta esta realmente intentando ejecutar. Y analiza su sintaxis. Saludos. PD: En el mensaje de error solo pone la cadena posterior al error de sintaxis. Asi que en la consulta mira lo que hay justo antes de \'Ca-02\' .
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| ||||
modifique la linea para ver el error $select_patri = mysql_query("SELECT * FROM patrimonio WHERE nficha=$nficha") or die("Error. MySQL dice: ".mysql_error()." ".$nficha); y me salta en error Error. MySQL dice: Unknown column 'Ca' in 'where clause' Ca-02 nficha es el nombre campo dentro de la tabla de tipo texto que guarda el codigo. pero aun no caigo que pasa.
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia |
| |||
Haz lo que te he comentado, mete la consulta en una variable y haz un echo de la consuklta real. Te saldra algo como: SELECT * FROM patrimonio WHERE nficha=Ca-02 Y ahi si puedes ver el error de sintaxis. Saludos.
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| ||||
puse directamente SELECT * FROM patrimonio WHERE nficha=Ca-02 y me daba error lo cambie por SELECT * FROM patrimonio WHERE nficha='Ca-02' y me saco los datos correctamente. todo esto en el archivo infomina.php pero ahora no tengo claro como pasar ese valor para que haga la consulta correctamente., es decir pasar el valor desde mapa.php a infomina.php que es donde se ahce la consulta y saca los datos del registro. ¿que sera?
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia Última edición por pereztroff; 02/11/2004 a las 12:54 |
| ||||
Pues no, no lo veo!!! hice lo que me comento josemi, meti en una variable la consulta de la siguiente manera $pregunta="SELECT * FROM patrimonio WHERE nficha=$nficha"; y la variable tomo lo siguiente: SELECT * FROM patrimonio WHERE nficha=Ca-02 pero me dio un error que dice: Error. MySQL dice: Unknown column 'Ca' in 'where clause' pues la verdad es que ya no veo el error por ninguna parte, alguien se da cueenta de que va este error???
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia |
| |||
¿Nunca te has liado con las comillas en PHP? Pues con MySQL es lo mismo. PAra musql, si no esta entre comillas no es una cadena, sino una expresion. Y las expresiones que son cadenas, como Ca, en un where tienen que ser nombres de campos. La solucion es poner las comillas que has puesto directamente al hacer las pruebas. Las tienes que poner en la cadena que crea la consulta, no en el parametro que pasas. Saludos.
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| ||||
cambie mapa.php y puse <? $ficha="'"."Ca-02"."'"; ?> <area shape="circle" coords="1755,40,19" <? echo"href=\"infomina.php?nficha=$ficha\""; ?> target="_blank" alt="Mina 02"> pero me sale error: SELECT * FROM patrimonio WHERE nficha=\'Ca-02\' Error. MySQL dice: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '\'Ca-02\'' at line 1 yo estoy por rendime porque no veo la solucion ni patras
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia |
| ||||
bueno ya lo consegui, uff que dolor de cabeza para la tonteria que era. Gracias Josemi, por hacerme reflexionar. solo tuve que modificar el archivo que hacia la consulta, o sea infomina.php Código PHP:
__________________ Foro de futbol andaluz, todos los equipos de futbol de Andalucia |