Pubblicazione video

  • Creatore Discussione Creatore Discussione Z0MB13
  • Data di inizio Data di inizio

Z0MB13

Utente Attivo
30 Mar 2013
34
0
0
Salve utenti di mr.webmaster!
Volevo lasciare un piccolo topic d'aiuto, ovvero vorrei sapere come posso inserire la pagina upload in cui l'utente carica un suo video (però voglio che abbia il mio web player!). Vorrei anche creare una pagina profilo simile a youtube, in cui gli user potranno vedere i loro video pubblicati/caricati. Magari vorrei mettere anche il contatore di visualizzazioni.
 
ciao
per caricare i file dai un occhio a
https://www.mrw.it/php/gestire-upload-tramite-form_6600.html
poi prima di caricarlo tramite php devi verificare che l'estenzione del file sia adatta al tuo player, es.
se il tuo player supporta l'estenzione .pinco (nome_del_filmato.pinco) fai
PHP:
<?php
//.....
$file_ammessi=array("pinco"); //uso l'array perche puoi elencare anche altri tipi di estenzioni es. =array("pinco","pallo");
$estenzione=pathinfo($_FILES['userfile']['name'], PATHINFO_BASENAME);//ricavi l'estenzione
if(in_array($estenzione,$file_ammessi)){
		//l'estenzione è consentita quindi carichi (vedi il link che ti ho dato
}else{
		//file con eztensione non consentita dai un messaggio di errore e riinvii l'utente dove vuoi tu
}
//......
?>
 
Vorrei che riconoscesse solamente il formato .mov poi vorrei anche che il video andasse nel profilo dell'utente, si può?
 
ciao
per fargli riconoscere solo .mov allora non ti serve l'array
basta

PHP:
 <?php
//.....
if(pathinfo($_FILES['userfile']['name'], PATHINFO_BASENAME) == "mov"){
        //l'estenzione è consentita quindi carichi (vedi il link che ti ho dato
}else{
        //file con estenzione non consentita dai un messaggio di errore e riinvii l'utente dove vuoi tu
}
//......
?>

poi per inviare il filmato nel profilo utente devi ricavarti i dati di iscrizione (username e/o password asseganti all'utente) e nella pagina dove mostri il filmato caricare i file che corrispondono a quell' user e/o pass.
 
Ottimo, mentre per la pagina upload? Cioè, da quel link non ci capisco molto. xD
 
ciao
se hai pazienza ti posto un esempio.
una domanda, immagino che tu utilizzi mysql e che tu abbia già la tabella relativa agli utenti, giusto?
 
Sisi.
P.S: Per caso sai se è possibile aprire il file di configurazione php di xampp? Devo attivare "l'e-mail di attivazione", ovvero inserire una e-mail che invia i dati a chi si iscrive.
 
Ciao
Il codice deve venire così?

PHP:
<html>
<head>
<title>Upload</title>
</head>
<body>
<form enctype="multipart/form-data" action="upload.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="30000">
Invia questo file: <input name="userfile" type="file">
<input type="submit" value="Invia File">
</form>
</body>

<?php
//percorso della cartella dove mettere i file caricati
$uploaddir = '/var/www/myupload/';

//Recupero il percorso temporaneo del file
$userfile_tmp = $_FILES['userfile']['tmp_name'];

//recupero il nome originale del file caricato
$userfile_name = $_FILES['userfile']['name'];

print "<pre>";
//copio il file dalla locazione temporanea alla mia cartella upload
if (move_uploaded_file($userfile_tmp, $uploaddir . $userfile_name)) {
  //Se l'operazione è andata a buon fine...
  print "File inviato con successo. Ecco alcune informazioni:\n";
  print_r($_FILES);
}else{
  //Se l'operazione è fallta...
  print "Upload NON valido! Alcune informazioni:\n"; 
  print_r($_FILES);
}
print "</pre>";
?>

</html>

Non so dove mettere:

PHP:
 <?php 
//..... 
if(pathinfo($_FILES['userfile']['name'], PATHINFO_BASENAME) == "mov"){ 
        //l'estenzione è consentita quindi carichi (vedi il link che ti ho dato 
}else{ 
        //file con estenzione non consentita dai un messaggio di errore e riinvii l'utente dove vuoi tu 
} 
//...... 
?>
 
Ultima modifica di un moderatore:
ciao
prova così
PHP:
<html>
<head>
<title>Upload</title>
</head>
<body>
<?php
if(isset($_POST['invia'])){//verifico che sia stato premuto il submit
	//recupero il nome originale del file caricato
	$userfile_name = $_FILES['userfile']['name'];
	if(pathinfo($_FILES['userfile']['name'], PATHINFO_BASENAME) == "mov"){
		//percorso della cartella dove mettere i file caricati
		$uploaddir = '/var/www/myupload/';
		//Recupero il percorso temporaneo del file
		$userfile_tmp = $_FILES['userfile']['tmp_name'];
		print "<pre>";
		//copio il file dalla locazione temporanea alla mia cartella upload
		if (move_uploaded_file($userfile_tmp, $uploaddir . $userfile_name)) {
  			//Se l'operazione è andata a buon fine...
  			print "File inviato con successo. Ecco alcune informazioni:\n";
  			print_r($_FILES);
			//e qui se devi puoi salvare i dati nel db
		}else{
  			//Se l'operazione è fallta...
  			print "Upload NON valido! Alcune informazioni:\n"; 
  			print_r($_FILES);
		}
		print "</pre>";
	}else{
		echo "<pre>";
		echo "file non valido";
		echo "<pre>";
	}
	//con questa torni automaticamente al form pulito dopo 3 secondi (contetn='3,...)
	//3 secondi sono sufficienti perchè l'utente legga i messaggi
	echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
}else{
?>
<form enctype="multipart/form-data" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" method="POST">
<!-- questa, se non verifichi la grandezza del file, non serve, comunque puoi verificarla tramite php con $_POST$_FILES['userfile']['size']-->
<input type="hidden" name="MAX_FILE_SIZE" value="30000">
Invia questo file: <input name="userfile" type="file"><br />
<input type="submit" value="Invia File" name="invia">
</form>
<!-- qui ci andrebbe un link per dare la possibilità all'utente di uscire-->
<?php
}
?>
</body>
</html>
p.s.
ti ho fatto alcune correzioni
 
Non va, mi esce questo:

Warning : include (config.php) [ function.include ]: failed to open stream: No such file or directory in / Applications / XAMPP / xamppfiles / htdocs / energia / pagine / uploadvideo.php on line 3

Warning : include () [ function.include ]: Failed opening 'config.php' per l'inclusione in / Applications / XAMPP / xamppfiles / htdocs / energia / pagine / uploadvideo.php sulla linea 3

Fatal error : Call to undefined function connect () in / Applications / XAMPP / xamppfiles / htdocs / energia / pagine / uploadvideo.php sulla linea 4

Ho incollato il tuo codice su uploadvideo.php
 
ciao
esempio
se la pagina in cui hai l'include o il require è nella root e la pagina che devi includere nella cartella "pinco" il percorso è

PHP:
require_once "pinco/pagina_da_includere.php";
 
Va bene. Senti, come faccio a mettere un input in cui qualsiasi cosa scrivo e poi clicco invio va in automatico sotto all'input. Esempio:

Codice:
"Ciao" [INVIA] <- Clicco invia
-----------------------------------------
Z0MB13 ha pubblicato un messaggio:

Ciao

Capito? Tipo facebook. Ho messo l'input simile a facebook ma quando invio il testo ovviamente non lo pubblica: 1. perchè non sono iscritto (non so mettere il collegamento dell'iscrizione); 2. perché manca il codice php o js per pubblicarlo.

Aspetto una tua risposta. :D
 
Ciao, senti per quanto riguarda la funzione email, come posso fare? Nel senso che quando un utente si registra riceve un email di conferma.
 

Discussioni simili