Para organizar los datos en dichos formularios, puede usar matrices de formularios HTML. Supongamos que presentamos una gran cantidad de datos sobre alguna casa. Me gustaría dividir los datos en secciones, por ejemplo: general
, geo
, features
, descriptions
y componer formularios como este.
<form>
<fieldset>
<legend>General information</legend>
<input type="number" name="general[pax]" value="" placeholder="Pax" />
<input type="number" name="general[pets]" value="" placeholder="Pets" />
<input type="text" name="general[type]" value="" placeholder="Type" />
</fieldset>
<fieldset>
<legend>GEO data</legend>
<input type="text" name="geo[longitude]" value="" placeholder="Longitude" />
<input type="text" name="geo[latitude]" value="" placeholder="Latitude" />
</fieldset>
<fieldset>
<legend>Features</legend>
<input type="checkbox" name="features[internet]" value="1" title="Internet" />
<input type="checkbox" name="features[pool]" value="1" title="Pool" />
<input type="checkbox" name="features[conditioner]" value="1" title="A/C" />
</fieldset>
</form>
ACTUALIZACIÓN: usando <fieldset>
y <legend>
etiquetas y un poco de jQuery
(no demostraron) puede mostrar fácilmente/ocultar los diferentes grupos y nombrarlos a su gusto.
Después de la presentación de dicha forma podrá acceder a los valores como:
$pets = (int)$_POST['general']['pets'];
$features = $_POST['features'];
$lon = (float)$_POST['geo']['longitude'];
$lat = (float)$_POST['geo']['latitude'];
Se facilitará su desarrollo y reducir los esfuerzos para controlar/análisis sintáctico/enumerar los diferentes grupos de datos.
ACTUALIZACIÓN: o uno más posible variante es
<input type="text" name="params[param1]" value="" />
<input type="text" name="params[param2]" value="" />
<input type="text" name="params[param3]" value="" />
mientras que en PHP
$params = $_POST['params']; // getting our isolated array of parameters
$names = array_keys($params); // extracting names from array
$values = array_values($params); // extracting values from array
$mysql->insert($names, $values) // and trying to implement desired solution
¿Hay una pregunta específica? No existe un inhibidor nativo que le impida presentar 50 campos (sin duda sobre POST - con GET puede eventualmente encontrarse con los límites de longitud de URL). – Utkanos
[aquí tienes] (http://stackoverflow.com/questions/1411811/how-to-post-a-form-with-many-fields-with-jquery) suponiendo que tu 'huge' es igual a' many fields' y no 'campos grandes' –
Quiero decir que tal vez haya marcos o métodos que puedan ayudarme. Estoy muy cansado de manejar a través de $ _POST ['field'] -> insertar en la base de datos. – d7p4x