topo_bionico gracias por la ayuda, estoy probando lo que me pasaste, tengo unas dudas, disculpa mi ignorancia.
Sin modificar tu código, en la base de datos tengo una tabla "tabla_codigos" y un campo "codigo", es asi el nombre que debe llevar en la tabla? o debo crear varios campos codigo_0, _1, _2 ?
En el formulario usaste name="codigo_0"
Probé solo con esto para que inserte.
Código:
<?
$conexion = mysql_connect("localhost","xxxxx","xxxxx");
mysql_select_db("xxxxx",$conexion);
mysql_query ("SET NAMES 'utf8'");
//Funcion para comprobar que se unico codigo en la DB
function unicoCodigo($valor){
$sql='SELECT count(*) FROM `tabla_codigos` WHERE `codigo`='.$valor;
$result= mysql_query($sql, $conexion) or die(mysql_error()); //$conexion es la conexion a la base de datos
$r=mysql_fetch_array($result);
if ($r[0]==0){
return true;
}
else return false;
}
//funcion para insertar el codigo
function insertCodigo($valor){
$sql='INSERT INTO `tabla_codigos` (`codigo`) VALUES (\''.$valor.'\')';
mysql_query($sql, $conexion) or die(mysql_error());
}
if (count($_POST)>=25){ //Solamente ingresa si se envían 25 códigos o menos
//Obtener códigos
$c=0;
$codigo='codigo_'.$c;
$cod=array();
while (isset($_POST[$codigo])){
if ($_POST[$codigo_]>=150000 && $_POST[$codigo]<=175000){
$v=mysql_real_escape_string($_POST[$codigo]);
array_push($cod, $v);
}
$c=$c+1;
$codigo='codigo_'.$c; //Vamos aumentando codigo_0, codigo_1, codigo_2 etc
}
//Quitamos valores duplicados del array (Ej: 1,1,5,5,6 devuelve 1,5,6)
$cod=array_unique($cod);
//Carga en base de datos, recorremos el array y comprobamos, si es valido lo inserta
foreach($cod as $valor){
//1º Verificamos que no este cargado
if (unicoCodigo($valor)){
insertCodigo($valor);
}
}
}
?>