Les muestro las 2 páginas que uso:
form.html
Código HTML:
<script type="text/javascript"> var numero = 0; // Funciones comunes c= function (tag) { // Crea un elemento return document.createElement(tag); } d = function (id) { // Retorna un elemento en base al id return document.getElementById(id); } e = function (evt) { // Retorna el evento return (!evt) ? event : evt; } f = function (evt) { // Retorna el objeto que genera el evento return evt.srcElement ? evt.srcElement : evt.target; } addField = function () { container = d('file'); span = c('SPAN'); span.className = 'archivo'; span.id = 'archivo' + (++numero); field = c('INPUT'); field.name = 'archivo[]'; field.type = 'file'; a = c('A'); a.name = span.id; a.href = '#'; a.onclick = removeField; a.innerHTML = 'Quitar'; span.appendChild(field); span.appendChild(a); container.appendChild(span); } removeField = function (evt) { lnk = f(e(evt)); span = d(lnk.name); span.parentNode.removeChild(span); } </script> <form action="uploadok.php" method="post" enctype="multipart/form-data"> <label for="to"></label> <label>Archivos Adjuntos:</label> <a href="#" onClick="addField()">Agregar Archivo</a> <div id="file"></div> <input type="submit" value="upload" id="archivo" name="archivo" /> <input type="hidden" name="action" value="upload" /> </form>
uploadok.php
Código PHP:
//conexion a la db
include('conectar.php');
// conexion a la base
$conexion = mysql_connect($host_db, $usuario_db, $pass_db) or die ("no se ha podido conectar a la BD");
mysql_select_db($base_db, $conexion) or die ("no se ha podido seleccionar la BD");
if ($_POST["action"] == "upload") {
$i=0;
$tmpfile = $_FILES['archivo']['tmp_name'];
$imagen = $_FILES['archivo']['name'];
$usuario_db = "****";
$pass_db = "****";
$ftppath = "../prueba2/images/";
$ftpurl = "ftp://".$usuario_db.":".$pass_db."@".$ftppath;
//places files into same dir as form resides
foreach ($_FILES["archivo"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
echo"$error_codes[$error]";
move_uploaded_file(
$_FILES["archivo"]["tmp_name"][$key],
$_FILES["archivo"]["name"][$key]) or die("Ocurrio un problema al intentar subir el archivo.");
$imagen=$_FILES["archivo"]["name"];
echo "nombre de archivo:".$imagen[$i]."<br>";
mysql_query("INSERT INTO imagenes(imagen) VALUES ('$imagen[$i]') ", $conexion) or die ("Problemas al subir los archivos.");
$i++;
}
}
}
¿Puede ser que el AJAX de la primer página esté causando esto? Sino, les agradecería me puedan orientar.
Gracias a todos y saludos. Marx.