esta es la parte que te obtiene la ruta
$_SERVER['DOCUMENT_ROOT']
yo lo hago asi:
Código PHP:
$root = $_SERVER['DOCUMENT_ROOT']; //guardo la ruta absoluta en variable
$conn_mysql = conecta_db(); //conexion a la base de datos
if (!empty($_FILES)) {
$nombre = $_POST['nombre'];
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $root.'uploadify/images/uploads/'.$nombre.'/'; armo la ruta a donde quiero que guarde las imagenes
$fileName = $_FILES['Filedata']['name'];
$targetFile = $targetPath.$fileName; //aca se concatena la ruta + el nombre del archivo
move_uploaded_file($tempFile,$targetFile);
$sql_insert="Insert into imagenes (nombre_img, ruta_img) values ('$nombre', '$targetFile')"; //insertas el nombre y la ruta de la imagen en la bd
mysql_query($sql_insert) or die('Error en la inserción: '.mysql_error());
echo "OK";
exit();
}
En mi caso no he logrado pasar la variable nombre, si me inserta la ruta en la base pero el nombre queda vació
mi script es este:
Código:
$(document).ready(function() {
$('#file_upload').uploadify({
'uploader' : '../images/images_opiniones/uploadify.swf',
'buttonText' :'Examinar...',
'cancelImg' : '../images/images_opiniones/cancel.png',
'script' : 'upload/uploadify.php',
'scriptData' : { 'nombre': $('#autor_opinion').val()}, //esta linea no esta funcionando
'folder' : '../images/images_opiniones/uploads',
'auto' : false,
'fileDesc' : 'Tipo de imágenes permitidas (.JPG, .GIF, .PNG)',
'fileExt' : '*.jpg;*.jpeg;*.gif;*.png',
'sizeLimit' : 2097152, //default bytes *2MB* --1MB 1048576---
'method' : 'post',
'multi' : true,
'onAllComplete' : function(data)
{
alert( 'Todas las imágenes han sido agregadas correctamente' );
}
});
});
el html:
Código HTML:
<div id="form_opinion">
<input id="file_upload" type="file" name="file_upload" />
<br />
nombre <input type="text" id="autor_opinion" /><div id="error_autor_op"></div>
<br />
<input type="button" value="Enviar" onclick="$('#file_upload').uploadifyUpload()" />
</div>
<div id="status"></div>