Necesito ayuda con una variable... que me está arruinando la paciencia..
Quiero hacer una mysql_query con un Select, que en ocasiones me dice NULL
(porque no hay registros que cumplan los requisitos) intentando buscar el valor máximo de un campo..
Y tras conseguir ese select...
Ejecutar otro mysql_query con un INSERT... con esa variable + 1...
La tabla tiene estos campos: ID(int), CAMPO(char), OTROCAMPO(char) y ORDEN(int).
Este es el codigo (es el API Mysql no el Mysqli...):
Código:
Bueno, pues este código me dice (haya o no haya valores encontrados...) que $queorden vale 'Resource id #4' y me añade siempre el valor 0 o 5... nunca 1..$link = mysql_connect("sql2.freesqldatabase.com", "usuario","password") or die ("Error al conectar a la base de datos."); mysql_select_db("sql23917", $link) or die ("Error al conectar a la base de datos."); $queorden= mysql_query("SELECT ORDEN FROM TABLA WHERE OTROCAMPO='lo que sea' ORDER BY ORDEN DESC LIMIT 1") or die("Error en SELECT: ".mysql_error()); switch ($queorden){ case 0; $elorden = 1; break; case NULL; $elorden = 1; break; default; $elorden =$queorden++; } mysql_query("INSERT INTO TABLA (CAMPO, OTROCAMPO, ORDEN) VALUES ('.$unvalor.','.$otrovalor.','.$elorden.')"; mysql_free_result($queorden); mysql_close($link);
¿Por qué? ¿Qué hago mal? La QUERY en phpmyadmin me funciona perfectamente.. salvo cuando no hay valores..
he intentado cambiar la query "SELECT IFNULL(MAX(orden),0) FROM TABLA WHERE... patatin patatan..."
Tambien he intentado en vez del switch un simple If....else.. pero nada.. pasa igual..
¿Alguna idea, pleaseeee?