Hola chicos, hace unos dias encontre la forma de insertar la ruta de una imagen, pero yo quisiera saber si se puede hacer lo mismo con 2, 3, 4 imagenes más.
aca esta el formulario:
<form id="formulario" action="php/subir.php" method="POST" enctype="multipart/form-data">
<div class="campos">
<label > Nick </label>
<input type="text" name="nombre" required/>
</div>
<div class="campos">
<label> Mail </label>
<input type="email" name="email" required/>
</div>
<div class="campos">
<label> Edad </label>
<input type="text" name="edad" required/>
</div>
<div class="campos">
<label for="imagen">Imagen:</label>
<input type="file" name="hugo" id="imagen" />
<input type="submit" name="subir" value="Subir"/>
</div>
</form>
subir.php
<?php
include('myDBC.php');
//Definir Tamaño de archivo 5MB
define('LIMITE', 5000);
//Definir arreglo con extensiones permitidas usar serialize
define('ARREGLO', serialize( array('image/jpg', 'image/jpeg', 'image/gif','image/png')));
$PERMITIDOS = unserialize(ARREGLO); //Usar unserialize para obtener el arreglo
$subirInformacion = new myDBC(); //Objeto para conexión a BD
if ($_FILES["hugo"]["error"] > 0){
echo'<script type="text/javascript">
alert("Error de FILE Selecciona un Archivo");
window.location="http://localhost/index.php"
</script>';
}
else {
if (in_array($_FILES['hugo']['type'], $PERMITIDOS) && $_FILES['hugo']['size'] <= LIMITE * 1024){
//Desde subir.php a la carpeta imagenes hay que salir un directorio
//../imagenes/nombreDeArchivo
$rutaEnServidor = "../imagenes/" . $_FILES['hugo']['name'];
//Desde index.php, la carpeta imagenes está en imagenes/nombreDeArchivo
$ruta = "imagenes/" . $_FILES['hugo']['name'];
if (!file_exists($ruta)){
$resultado = move_uploaded_file($_FILES["hugo"]["tmp_name"], $rutaEnServidor);
if ($resultado){
$name = $_POST['nombre'];
$ema = $_POST['email'];
$ed = $_POST['edad'];
$subirInformacion->subirTodo($name, $ema, $ed, $ruta);
}else {
echo'<script type="text/javascript">
alert("Ocurrió un error al mover archivo");
window.location="http://localhost/index.php"
</script>';
}
}
?>
insertando datos
<?php
class myDBC{
public $mysqli=null;
public function __construct(){
include_once 'conexion.php';
$this->mysqli = new mysqli($servername, $username, $password, $dbname);
if ($this->mysqli->connect_errno){
echo "Error MySQLi: (" . $this->mysqli->connect_errno.") " . $this->mysqli->connect_error;
exit();
}
$this->mysqli->set_charset("utf8");
}
public function subirTodo($nombre, $email, $edad, $ruta){
$q = "INSERT INTO imagenes (nombre, email, edad, ruta) VALUES ('$nombre', '$email', '$edad', '$ruta')";
$result = $this->mysqli->query($q);
if($result){ //Si resultado es true, se agregó correctamente
echo'<script type="text/javascript">
alert("Agregado Exitosamente a la BD");
window.location="http://localhost/index.php"
</script>';
}
else{ //Si hubo error al insertar, se avisa
echo'<script type="text/javascript">
alert("Chispas... Algo anda mal");
window.location="http://localhost/ndex.php"
</script>';
}
}
Bueno, si a alguien le sirve genial. Si saben como insertar multiples imagenes a este codigo, se lo agradeceria mucho.
Saludos