Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tô usando um plugin de upload em ajax, funciona bem, até consegui fazer com que up as imagens para albuns diferentes registrados no bd. A questão é a seguinte, quero fazer com que, na hora do upload, o sistema up com nome aleatório, ou em pastas separadas por album.
<?php
if(isset($_GET['edit']) && !empty($_GET['edit'])){
$id = $_GET['edit'];
$stmt = $dbh->prepare("SELECT * FROM albuns WHERE id = $id");
$stmt->execute();
while ( $album = $stmt->fetch(\PDO::FETCH_OBJ) )
{
$album_id = $album->id;
?>
<div class="b_up">
<div id="drop">
<a>UP</a>
<input type="file" name="upl" multiple />
<input type="hidden" name="id_album" value="<?php echo $album_id?>">
<span>Solte a imagem aqui!</span>
</div>
</div>
</div>
<ul>
</ul>
</form>
</div>
upload.php
// A list of permitted file extensions
$allowed = array('png', 'jpg', 'gif','zip');
if(isset($_FILES['upl']) && $_FILES['upl']['error'] == 0){
$extension = pathinfo($_FILES['upl']['name'], PATHINFO_EXTENSION);
$name = $_FILES['upl']['name'];
$album = $_POST['id_album'];
$sql = "INSERT INTO fotos (foto, album) VALUES (:name, :album)";
$q = $dbh->prepare($sql);
$q->execute(array(':name'=>$name, ':album'=>$album));
if(!in_array(strtolower($extension), $allowed)){
echo '{"status":"error"}';
exit;
}
if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/'.$_FILES['upl']['name'])){
echo '{"status":"success"}';
exit;
}
}
e uma parte do arquivo que faz o upload em ajax
_getParamName: function (options) {
var fileInput = $(options.fileInput),
paramName = options.paramName;
if (!paramName) {
paramName = [];
fileInput.each(function () {
var input = $(this),
name = input.prop('name') || 'files[]',
i = (input.prop('files') || [1]).length;
while (i) {
paramName.push(name);
i -= 1;
}
});
if (!paramName.length) {
paramName = [fileInput.prop('name') || 'files[]'];
}
} else if (!$.isArray(paramName)) {
paramName = [paramName];
}
return paramName;
},
Desde já agradeço.
Ou um, ou outro, ou os dois?
Só preciso agora do nome Aleatório, o outro eu já consegui.
Ou um, ou outro, ou os dois?