Ciao a tutti, spero mi rispondiate. Ho una pagina in cui stampo una tabella con le canzoni presenti sul db e stampo anche dei button radio. Si seleziona il button radio corrispondente alla canzone desiderata, si sfoglia per ricercare l'mp3 e si invia.
Codice PHP:
echo "<form action='Upload.php' method='post' enctype='multipart/form-data' >";
echo "<table><tr><td>Titolo Canzone</td><td>ID</td><td>Carica canzoni in formato mp3</td></tr>";
while ($row = mysql_fetch_array($result))
{
echo "<tr><td> $row[nome_canzone] </td>";
echo "<td> $row[id_canzone] </td>";
echo "<td><input name='userfile[]' type='file'></td>";
$id = $row[id_canzone];
echo "<td><input type='radio' name= 'id_canzone' value='$id' ></td>";
}
?>
<td><input type='submit' value='Upload mp3'></td></tr>
</table>
</form>
La pagina upload.php è cosi composta:
Codice PHP:
$db = db_connetti();
$tipo=$_FILES["userfile"]["type"];
//echo $tipo;
$idmp3 = $_POST[id_canzone];
foreach($_FILES["userfile"]["error"] as $key => $error)
{
if($error == UPLOAD_ERR_OK )
{
$tmp_name = $_FILES["userfile"]["tmp_name"][$key];
$percorso = "mp3/";
$nuovo_nome = $percorso.$idmp3.".mp3";
move_uploaded_file($tmp_name, $nuovo_nome);
$query2 = "UPDATE Canzoni SET link_mp3 = '$nuovo_nome' WHERE id_canzone='$idmp3'";
mysql_query($query2,$db);
}
}
echo "Operazione completata...";
Funziona, il problema è ke se l'utente seleziona un file diverso da un mp3(audio,testo,ecc) questo viene comunque caricato.
Con $tipo=$_FILES["userfile"]["type"]; dovrei ricevere il mime-type ma se lo stampo nn ho ricevuto il mimetype ma mi stampa la scritta Array quindi non ricevendolo non riesco a afre il controllo. Come posso fare?
Grazie