Script d'upload comme sur youtube

Narkotic74 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
.N Messages postés 27 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'aurais besoin de votre aide pour un script Upload en php comme sur youtube.
Mais pas avec des videos .
Avec des maps qui marche sur le moteur source.

J'explique:
Il y'aurait une page php nommé: Upload.php .
Sur cette page la personne devrais marquer:
Le nom de sa map.
La description.
Une photo
Et son dossier map .bsp .

Il clique sur envoyer.
Sa charge et la le toute la description qui la marquer va sur une page php genre.
www.siteweb.com/map4457£e4

Un peut comme sur youtube ^^

J'ai regarder partout j'ai rien trouver.
Si vous pouvez m'aider sa serait vrement coule et en plus vous feriez avancer d'un grand pas :)

Merci de votre aide

A voir également:

4 réponses

.N Messages postés 27 Date d'inscription   Statut Membre Dernière intervention   578
 
Bon, voilà, je ne m'y connais pas trop en Php, donc excuse moi par avance si c'est plus ou moins le bazar dans mon code. Alors, ta question est assez intéressante, mais puisque je ne m'y connais pas, je ne sais pas s'il existe effectivement une méthode standard, conventionnelle et rependue pour générer des identifiants aléatoires dans une base de donné pour créer par exemple des liens vers des fichiers ou quelque information que ce soit. Mais bon, personnellement, j'aurais tendance à procéder ainsi : générer aléatoirement un identifiant assez long (pour éviter la récurrence) de caractères alpha-numériques, y attacher un id simple (peut toujours servir), et puis bien sûr l'information qu'on souhaite y rattacher. La série de lettres et de chiffres produite au hasard peut être utilisée comme id dans une base de données, ou encore comme nom de répertoire ou de fichier (rattaché à un utilisateur par exemple).
Bien entendu, pour un code propre, il faut tester si l'id aléatoire existe déjà avant de l'utiliser comme tel.

avec 32 caractères et disons un milliard d'entrées, on à une probabilité de récurrence de un sur (36^32 / 10^9) = 6,3340286662973277706162286946812e+40

Ce qui me semble acceptable.

Je poste à la suite de ce message quelques lignes de code pour illustrer ce que je veux dire...
0
.N Messages postés 27 Date d'inscription   Statut Membre Dernière intervention   578
 
Contenu du fichier addRandStr.php :
<?php session_start(); ?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
	<head>		
		<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">     	
		<link rel="stylesheet" media="screen" type="text/css" title="Design standard" href="Css/standard.css">
		
		<title>Test</title>
		<style type="text/css">
		
		.errorText
		{
			font-weight:bold;
			font-size:18px;
			color:red;
		}
		
		.successText
		{
			font-weight:bold;
			font-size:18px;
			color:green;
		}
		</style>
   </head>
   
   <body>
   <?php
		mt_srand((float) microtime()*1000000);
		
		
		function formatEntry($entry)
		{
			$returnValue = "";
			$lenght = strlen($entry);
			for ($i=0; $i<$lenght; $i++)
				if ($entry{$i} == "'")
				{
					$returnValue .= "\\'";
				}
				else $returnValue .= $entry{$i};
			
			return $returnValue;
		}
		
		function createRndStr($strSize)
		{
			$returnValue = "";
		
			for ($i=0; $i<$strSize; $i++)
			{
				$parseValue = mt_rand(0, 35);
				if ($parseValue < 10)
					$parseValue += 48;
				else
					$parseValue += 87;
				
				$returnValue .= chr($parseValue);
			}
			
			return $returnValue;
		}
		
		if (isset($_POST['newInformation']))
		{
			echo "Adding information...<br />";
			$bdd = new PDO('mysql:host=localhost;dbname=testDataBase', 'root', '');
			do
			{
				$newId = createRndStr(32);
				$result = $bdd->query("SELECT 'informations' FROM 'randominformation' WHERE strId='".$newId."'");
			}
			while ($data = $result->fetch());
		
			 $bdd->exec("INSERT INTO randominformation(id, strId, informations) VALUES('','".$newId."', '".formatEntry($_POST['newInformation'])."')");
		}

   ?>
	  <form method="post" action="addRandStr.php">
	  Écrivez ici vos information : <br />
		<textarea name="newInformation" rows="8" cols="45"></textarea><br />
		<input type="submit" value="Valider" />
	  </form>
   </body>
</html>
0
.N Messages postés 27 Date d'inscription   Statut Membre Dernière intervention   578
 
Contenu du fichier getRandStr.php :

<?php session_start(); ?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
	<head>		
		<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">     	
		<link rel="stylesheet" media="screen" type="text/css" title="Design standard" href="Css/standard.css">
		
		<title>Test</title>
		<style type="text/css">
		
		.errorText
		{
			font-weight:bold;
			font-size:18px;
			color:red;
		}
		
		.successText
		{
			font-weight:bold;
			font-size:18px;
			color:green;
		}
		</style>
   </head>
   
   <body>
   <?php
		mt_srand((float) microtime()*1000000);
   
		function createRndStr($strSize)
		{
			$returnValue = "";
		
			for ($i=0; $i<$strSize; $i++)
			{
				$parseValue = mt_rand(0, 35);
				if ($parseValue < 10)
					$parseValue += 48;
				else
					$parseValue += 87;
				
				$returnValue .= chr($parseValue);
			}
			
			return $returnValue;
		}
		
		if (isset($_GET['d']))
		{
			
			$bdd = new PDO('mysql:host=localhost;dbname=testDataBase', 'root', '');
			$result = $bdd->query("SELECT 'informations' FROM 'randominformation' WHERE strId='".$_GET['d']."'");
			if ($data = $result->fetch())
			{
				echo "<div class='successText'>";
				echo "Information ".$_GET['d']." : </div>".$data['informations']."<br />";
			}
			else
				echo "L'information n'a pas été trouvée.<br />";
		}
		else
		{
			echo "<div class='errorText'>";
			echo "Erreur : aucun liens d'information spécifié.<br />";
			echo "</div>";
		}
   ?>
	   
   </body>
</html>

0
.N Messages postés 27 Date d'inscription   Statut Membre Dernière intervention   578
 
Puis, le code SQL pour créer la base de donnée (peut être mis dans un fichier SQL) :
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Base de données: 'testdatabase'
--

-- --------------------------------------------------------

--
-- Structure de la table 'randominformation'
--

CREATE TABLE IF NOT EXISTS 'randominformation' (
  'id' int(11) NOT NULL AUTO_INCREMENT,
  'strId' varchar(255) NOT NULL,
  'informations' text NOT NULL,
  PRIMARY KEY ('id')
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ;

--
-- Contenu de la table 'randominformation'
--

INSERT INTO 'randominformation' ('id', 'strId', 'informations') VALUES
(1, '17hik9no3usqelw36xujwovhxppa8gth', 'Informations quelconque ;).'),
(2, '4eyk8zk2eoqqr49as03kxrqhjve8gse6', 'Bon, et une information de plus!'),
(3, '9k0n474v7dtn5zrogx468120jwizw43p', 'Ajout no.3'),
(4, '801birkqymn3j7s8i22128mq1u1kcuei', 'Ajout no.4');

0