the_darkness Posted July 13, 2010 Report Share Posted July 13, 2010 (edited) hola, quiero crear una query que me devuelva todos los datos de los foros, hasta ahora puedo hacerlo pero me devuelve solo uno el codigo que use es este: <?php // Make a MySQL Connection mysql_connect("localhost", "xxxx", "xxx") or die(mysql_error()); mysql_select_db("vb") or die(mysql_error()); // Retrieve all the data from the "example" table $result = mysql_query("SELECT * FROM forums") or die(mysql_error()); // store the record of the "example" table into $row $row = mysql_fetch_array( $result ); // Print out the contents of the entry echo '<select><option value="" selected="selected">selecionar categoría</option> <option value="'.$row['forumid']; echo'">' .$row['title']; echo'</option></select>' ?> mi clon de t a r i n ga, esta hecho con vbulletin, tiene mas de una categoria pero solo muestra una, no me intereza usar tampoco spirate PD: SI ALGUN WEBMASTER ESTA INTEREZADO EN ENTRAR AL PROYECTO MANDEME UN PM Edited July 13, 2010 by the_darkness Link to comment Share on other sites More sharing options...
Ra Posted July 13, 2010 Report Share Posted July 13, 2010 Viejo... $row = mysql_fetch_array( $result ); esto lo debes poner en un ciclo while... Aquí mira el ejemplo 2... Suerte! Link to comment Share on other sites More sharing options...
the_darkness Posted July 13, 2010 Author Report Share Posted July 13, 2010 (edited) Viejo... $row = mysql_fetch_array( $result ); esto lo debes poner en un ciclo while... Aquí mira el ejemplo 2... Suerte! Tendria que ser asi o no? <?php mysql_connect("localhost", "xxxx", "xxx") or die(mysql_error()); mysql_select_db("vb") or die(mysql_error()); $result = mysql_query("SELECT * FROM forums") or die(mysql_error()); while ($row = mysql_fetch_array($result, MYSQL_NUM)) { // Print out the contents of the entry echo '<select><option value="" selected="selected">selecionar categoría</option> <option value="'.$row['forumid']; echo'">' .$row['title']; echo'</option></select>' } mysql_free_result($result); ?> o asi? <?php mysql_connect("localhost", "xxxx", "xxx") or die(mysql_error()); mysql_select_db("vb") or die(mysql_error()); $result = mysql_query("SELECT * FROM forum") or die(mysql_error()); while ($row = mysql_fetch_array($result, MYSQL_NUM)) { printf('<select><option value="" selected="selected">selecionar categoría</option> <option value="%s">%s</option></select>', $row[forumid], $row[title]); } mysql_free_result($result); ?> de cualquiera de las dos formas me salen 2 <select> asi: Edited July 14, 2010 by the_darkness Link to comment Share on other sites More sharing options...
alvaroxz Posted July 13, 2010 Report Share Posted July 13, 2010 Si cumpita algo asi debe ser, ese es el ejemplo clasico de mysql_fetch_array... Link to comment Share on other sites More sharing options...
the_darkness Posted July 14, 2010 Author Report Share Posted July 14, 2010 se ve doble el select, alguna ayuda? Link to comment Share on other sites More sharing options...
rkstro Posted July 14, 2010 Report Share Posted July 14, 2010 se ve doble el select, alguna ayuda? El problema es que en el bucle estas colocando el < select > dentro por lo que ese bucle se ejecuta mas de una vez y por eso se ve doble select. Lo que debes hacer es colocar < select > y </ select> fuera del bucle y dentro de este solamente los option Link to comment Share on other sites More sharing options...
the_darkness Posted July 14, 2010 Author Report Share Posted July 14, 2010 ya pude solucionar el problema, para tods aquellos que tengan el mismo problema la solucion es simple, deben hacer esto: <select><option value="" selected="selected">selecionar categoría</option> <?php mysql_connect("xxxx", "xxxx", "xxxx") or die(mysql_error()); mysql_select_db("vb") or die(mysql_error()); $query = "SELECT * FROM forum"; $result = mysql_query($query) or die(mysql_error()); while($row = mysql_fetch_array($result)){ echo ''; echo '<option value="'.$row['forumid']; echo'">' .$row['title']; echo''; } ?> </option> Gracias por su ayuda, si alguien quiere cooperar con este proyecto gratuito e intento de comunidad (de soporte y creacion de mods) que me mande un pm Link to comment Share on other sites More sharing options...
Ra Posted July 14, 2010 Report Share Posted July 14, 2010 Viejo... debería ser así: <?php mysql_connect("localhost", "xxxx", "xxx") or die(mysql_error()); mysql_select_db("vb") or die(mysql_error()); $result = mysql_query("SELECT * FROM forums") or die(mysql_error()); echo "<select>"; echo "<option value=\"0\" selected=\"selected\">selecionar categoría</option>"; while ($row = mysql_fetch_array($result, MYSQL_NUM)) { // Print out the contents of the entry echo "<option value=\"" . $row['forumid'] . "\">" . $row['title'] . "</option>"; } echo "</select>"; mysql_free_result($result); ?> Desde ya, acostúmbrate a usar las buenas prácticas de programación... en san google, puedes encontrar un montón... por ejemplo, no mezcles html con php... siempre es mejor todo php o todo html en un mismo archivo... Salu2. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now