Quim funciona lo que me dijiste, investigue en mysql lo de los campos booleanos y ya se como se tratan, pero tengo un problema:
El formulario para insertar las fotos en la DB me genera "n" campos tipo FILE por medio de javascript y en el codigo de insertar fotos, los trato con [$i], por lo que no se como insertar desde ese codigo el campo booleano en la DB
Me toco insertarlo manualmente con phpMyAdmin para probar y si, en la página de resultados se ve la foto con booleano = 1 (true)
Este es el formulario y el código con el que inserto las fotos
form:
Código HTML:
<div id="formulario">
<form id="form_img" name="form_img" method="POST" enctype="multipart/form-data" action="ins_img.php">
<div>
<label for="codigo">Código</label><br />
<p>El código de la propiedad a la que pertenecen las fotos.</p>
<input type="text" size="3" maxlength="10" name="codigo" id="codigo" />
</div>
<div id="adjuntos">
<label for="archivo">Fotos</label><br />
<p>Solo se permiten imágenes .jpg con peso menor a 2000Kb</p>
<input type="file" size="35" name="archivo[]" id="archivo[]" /><br />
<h4><a href="#" class="fotos" onClick="addCampo()">Click aquí para agregar otra foto</a></h4>
</div>
<div>
<input type="submit" id="submit" value="Agregar fotos a la propiedad" />
</div>
</form>
</div>
ins_img.php:
Código PHP:
<?php
include ("inc/connect.inc.php");
//$ruta = "../fotos/";
if (isset ($_FILES['archivo']) && $_FILES['archivo']['size'] > 0) {
$tamanomax = 2000000;
$ruta = "fotos";
$sub = $_POST['codigo'];
if (is_dir($sub)) {
$dir = $ruta."/".$sub."/".$archivo;
} else {
$dir_new = "fotos/".$sub;
@mkdir($dir_new, 0700);
$dir = $ruta."/".$sub."/".$archivo;
}
$total = count($_FILES['archivo']['name']);
for ($i = 0; $i < $total; $i++) {
$nombretemp = $_FILES['archivo']['tmp_name'][$i];
$nombrearchivo = $_FILES['archivo']['name'][$i];
$tamanoarchivo = $_FILES['archivo']['size'][$i];
$tipoarchivo = GetImageSize ($nombretemp);
$ancho = $tipoarchivo[0];
$alto = $tipoarchivo[1];
if ($tipoarchivo[2] == 2 || $tipoarchivo[2] == 3) {
if ($tamanoarchivo <= $tamanomax) {
if (move_uploaded_file ($nombretemp, $dir . $nombrearchivo)) {
$sSQL = "INSERT INTO fotos (id, codigo, imagen, dir, ancho, alto, peso) VALUES ('', '".$_POST['codigo']."', '$nombrearchivo', '$dir', '$ancho', '$alto', '$tamanoarchivo')";
$result = mysql_query($sSQL);
header ("Location: admin_area.php");
} else {
echo "No se ha podido cargar la imagen";
}
} else {
echo "La imagen tiene más de $tamanomax bytes y es muy pesada!";
}
} else {
echo "No es una imagen JPG o PNG";
}
}
}
$filehandle = opendir($ruta);
while ($file = readdir($filehandle)) {
if ($file != "." && $file != "..") {
$tamano = GetImageSize ($ruta . $file);
echo "<p><img src='$ruta$file' $tamano[3]><br></p>\n";
}
}
closedir($filehandle);
?>
Obviamente debo insertarlo en la consulta
Código PHP:
<?php
$sSQL = "INSERT INTO fotos (id, codigo, imagen, dir, ancho, alto, peso, ppal) VALUES ('', '".$_POST['codigo']."', '$nombrearchivo', '$dir', '$ancho', '$alto', '$tamanoarchivo', '')";
$result = mysql_query($sSQL);
?>
Pero no se, debo declarar alguna variable para ese campo o algo así?