8797 sujets

Développement web côté serveur, CMS

Bonjour , j'ais finis de codé mon site mais il me reste à configurer la base de donnée pour mon script d'ajout/suppression de designs.

mon code php :

	<?php
				mysql_connect("localhost","root","");
				mysql_select_db("test");
				$req = mysql_query("SELECT * FROM crea ORDER BY ID LIMIT 0,2");
		
				mysql_close();
		
				while($data = mysql_fetch_array($req))
				{ ?>
				<strong>Titre:</strong> <?php echo $data['titre']; ?><br />
				<img src="<?php echo $data['url']; ?>" alt="" /><br />
				<strong>Description:</strong> <?php echo $data['description']; ?>
				<br /><br />
			
				<?php
				}
		
				?>


code php administration des images :

<?php
	if( isset($_POST['url']) AND isset($_POST['titre']) AND isset($_POST['description']))
	{
		mysql_connect("localhost","root","") or die("erreur mysql");
		mysql_select_db("test");
		$url = htmlspecialchars($_POST['url']);
		$titre = htmlspecialchars($_POST['titre']);
		$description = htmlspecialchars($_POST['description']);
		mysql_query("INSERT INTO crea VALUES ('','$url','$titre','$description')");
		echo " les informations ont été correctement ajouté dans la base de donnée.";
		?>
		<a href="add_crea.php">retour</a>
		<?php
	}
	else
	{
?>

	<form method="post" action="add_crea.php">
			Entrez l'url de l'image:
			<input type="text" name="url" value=""  />
			<br />
			Entrez le titre de la création: 
			<input type="text" name="titre" value="" />
			<br />
			Entrez la description de la création:
			<textarea name="description" rows="5" cols="20" value="tapez le texte ici..." >
			</textarea>
			<br />
			<input type="submit" name="envoyer" value="envoyer" />
	</form>
	<?php
	}
?>


Merci d'avance pour votre aide
Salut,
il faut préciser la resource de connexion à la fonction mysql_select_db :
$link = @mysql_connect('localhost', 'root', '');
if (!$link)
{
    // gérer ici l'erreur de connexion
}
else
{
    $base = @mysql_select_db('test', $link);
    if (!$base)
    {
        // gérer ici l'erreur de sélection
    }
    else
    {
        // Base ok, en avant !
    }
}

Tout ça sans cette horreur de or die et sans les messages d'erreurs disgracieux de la part de PHP.
A adopter également pour mysql_query et mysql_fetch_*

Si ça foire toujours, c'est que tu essaies de sélectionner une base qui n'existe pas sur le serveur.

Et renseigne-toi sur la protection des données et l'injection SQL, ton script n'est pas très secure.

a+