Création base de donnée
Fermé
dlapatate
-
3 avril 2018 à 11:37
Dutchman24 Messages postés 23 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 12 septembre 2023 - 3 avril 2018 à 18:43
Dutchman24 Messages postés 23 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 12 septembre 2023 - 3 avril 2018 à 18:43
A voir également:
- Création base de donnée
- Creation compte gmail - Guide
- Formules excel de base - Guide
- Création compte google - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Création organigramme - Guide
2 réponses
jordane45
Messages postés
38270
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 novembre 2024
4 695
3 avril 2018 à 15:26
3 avril 2018 à 15:26
Bonjour,
Alors là... je dis tout de suite : Ne tiens pas compte de la réponse de Dutchman24 (ou alors avec beaucoup de précautions... )
Déjà.. l'extension mysql est OBSOLETE !
Voir ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Il faut, à la place, utiliser PDO ou mysqli.
Ensuite... je ne vois pas le rapport entre la question (conception de la bdd....) et la réponse de cet utilisateur qui donne un exemple bidon d'une page sans rapport.....
Et enfin.. la question portant sur la base de données... elle aurait d"avantage sa place dans le forum .... bases de données !
Je la déplace de suite.
Et puis
Il manque un champ pour son emplacement ...
A moins que tu ne stockes tous tes fichiers dans un seul répertoire et dans ce cas le champ "nom" suffirait".
Interclassement : je te conseille UTF8_general_ci
attribut et index : ben ça dépendra de tes besoins. Pour l'instant ne t'en occupe pas et laisse par défaut.
Alors là... je dis tout de suite : Ne tiens pas compte de la réponse de Dutchman24 (ou alors avec beaucoup de précautions... )
Déjà.. l'extension mysql est OBSOLETE !
Voir ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Il faut, à la place, utiliser PDO ou mysqli.
Ensuite... je ne vois pas le rapport entre la question (conception de la bdd....) et la réponse de cet utilisateur qui donne un exemple bidon d'une page sans rapport.....
Et enfin.. la question portant sur la base de données... elle aurait d"avantage sa place dans le forum .... bases de données !
Je la déplace de suite.
Et puis
alors pour l'instant j'ai crée mes 4 champs qui selon moi correspond au camps nécessaire pour "qualifier" un fichier
nom, extention, poids, date/time
Il manque un champ pour son emplacement ...
A moins que tu ne stockes tous tes fichiers dans un seul répertoire et dans ce cas le champ "nom" suffirait".
interclassement,attribut,index etc etc, les autre spécification quoi, je ne sais pas vraiment quoi mettre..
Interclassement : je te conseille UTF8_general_ci
attribut et index : ben ça dépendra de tes besoins. Pour l'instant ne t'en occupe pas et laisse par défaut.
Dutchman24
Messages postés
23
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
12 septembre 2023
2
3 avril 2018 à 13:44
3 avril 2018 à 13:44
Bonjour,
C'est un bon début.
Ensuite commence à monter ton site avec dans la racine les fichiers suivantes.
- index.php (le premier page qui sera appeler quand quelqu'un va sur www.tonsite.fr)
- db.php (le fichier de configuration pour entrer en contact avec ton base de données)
- style.css (optionel c'est pour configurer les div et text changer de couleur etc)
Tu peut configurer ton db.php avec le code suivant
<?php
// connect to server
mysql_connect ("nomduhote","nomutilisateur", "motdepasse");
// Select database
mysql_select_db("nomdubasededonnees");
?>
Apres sur ton index.php tu peut faire un <div> ou un <table> et appeler les informations dans ton base de donnees pour faire une list.
example:
<table cellspacing="5" style="margin:auto 0 auto 0">
<?
$query = mysql_query("SELECT * FROM voitures WHERE color='rouge' order by RAND() desc limit 2");
while ($result = (mysql_fetch_array($query))){
$result["date"] = date("d-m-Y", strtotime($result["date"]));
$result["title"]= substr($result["title"],0,80);
$result["descriptif"]= substr($result["descriptif"],0,200);
$result["descriptif"] = str_replace("``", "\"",$result["descriptif"]);
$result["descriptif"] = strip_tags($result["descriptif"]); ?>
<tr>
<td>
<table width="100%">
<tr bgcolor="#000000">
<td width="auto" rowspan="2" valign="top">
<? if ($result["img1"] != 'noimage.gif') { ?><img width="150" src="http://www.tonsite.fr/voitures/<?= $result["id"];?>/<?= $result["img1"];?>" /><? } ?>
</td>
<td height="30" style="color:#FFFFFF; padding-left:5px;">
<center><h2><?= $result["title"];?> ...</h2></center>
</td>
</tr>
<tr>
<td class="text" align="left" valign="top" style="padding-left:5px;">
<span class="text"><?= $result["text"];?>...
<a style="color:#ff9b00" href='index.php?page=voituredetails&id=<?= $result["id"];?>'>Details</a>
</span>
</td>
</tr>
</table>
<? } ?>
</td>
</tr>
</table>
Donc dans l'exemple tu demande de faire une list de tout les voitures rouge qui se trouve dans le table "voitures" avec le valeur "rouge" dans le colonne "color"
Si tu click sur le site sur 'Details' il t'envoie sur une autre page 'index.php?page=voituredetails&id=<?= $result["id"];?>' avec tout l'information concernant cette voiture rouge.
Cette page peut etre coder comme ça:
<div id="voituredetails">
<?
$query = mysql_query("SELECT * FROM voitures WHERE id = '".mysql_real_escape_string($_GET['id'])."'");
$result = (mysql_fetch_assoc($query));
?>
<div class="details">
<ul class="title">
<li><h1><?= $result["title"];?></h1></li>
</ul>
<br/>
<h2><?= $result["etat"];?></h2>
<p>
<b>Region:</b> <?= $result["region"];?>
<b>Ville:</b> <?= $result["ville"];?>
<b>Annee:</b> <?= $result["annee"];?>
</p>
<p><?= $result["descriptif"];?></p>
<p><b>Prix:</b> <?= $result["prix"];?> Euros</p>
</div>
</div>
Chaque <div> à son #id ou .class qui peut etre configurer dans un fichier .css
Pour cette example tu a besoin le table 'voitures' et les colonnes suivantes:
color, image1, id, title, etat, region, ville, annee, descriptif, date, et prix - Dans ton base de données
chaque colonne a son valeur informatif qui sera affiché ou la valeur est utiliser pour metre la liste dans l'ordre (example : avec la colonne 'date' on peut demander de faire une liste de plus agees à plus récent)
Voila c'est pas facile mais pourtant très logique.
Bon courage pour la suite.
C'est un bon début.
Ensuite commence à monter ton site avec dans la racine les fichiers suivantes.
- index.php (le premier page qui sera appeler quand quelqu'un va sur www.tonsite.fr)
- db.php (le fichier de configuration pour entrer en contact avec ton base de données)
- style.css (optionel c'est pour configurer les div et text changer de couleur etc)
Tu peut configurer ton db.php avec le code suivant
<?php
// connect to server
mysql_connect ("nomduhote","nomutilisateur", "motdepasse");
// Select database
mysql_select_db("nomdubasededonnees");
?>
Apres sur ton index.php tu peut faire un <div> ou un <table> et appeler les informations dans ton base de donnees pour faire une list.
example:
<table cellspacing="5" style="margin:auto 0 auto 0">
<?
$query = mysql_query("SELECT * FROM voitures WHERE color='rouge' order by RAND() desc limit 2");
while ($result = (mysql_fetch_array($query))){
$result["date"] = date("d-m-Y", strtotime($result["date"]));
$result["title"]= substr($result["title"],0,80);
$result["descriptif"]= substr($result["descriptif"],0,200);
$result["descriptif"] = str_replace("``", "\"",$result["descriptif"]);
$result["descriptif"] = strip_tags($result["descriptif"]); ?>
<tr>
<td>
<table width="100%">
<tr bgcolor="#000000">
<td width="auto" rowspan="2" valign="top">
<? if ($result["img1"] != 'noimage.gif') { ?><img width="150" src="http://www.tonsite.fr/voitures/<?= $result["id"];?>/<?= $result["img1"];?>" /><? } ?>
</td>
<td height="30" style="color:#FFFFFF; padding-left:5px;">
<center><h2><?= $result["title"];?> ...</h2></center>
</td>
</tr>
<tr>
<td class="text" align="left" valign="top" style="padding-left:5px;">
<span class="text"><?= $result["text"];?>...
<a style="color:#ff9b00" href='index.php?page=voituredetails&id=<?= $result["id"];?>'>Details</a>
</span>
</td>
</tr>
</table>
<? } ?>
</td>
</tr>
</table>
Donc dans l'exemple tu demande de faire une list de tout les voitures rouge qui se trouve dans le table "voitures" avec le valeur "rouge" dans le colonne "color"
Si tu click sur le site sur 'Details' il t'envoie sur une autre page 'index.php?page=voituredetails&id=<?= $result["id"];?>' avec tout l'information concernant cette voiture rouge.
Cette page peut etre coder comme ça:
<div id="voituredetails">
<?
$query = mysql_query("SELECT * FROM voitures WHERE id = '".mysql_real_escape_string($_GET['id'])."'");
$result = (mysql_fetch_assoc($query));
?>
<div class="details">
<ul class="title">
<li><h1><?= $result["title"];?></h1></li>
</ul>
<br/>
<h2><?= $result["etat"];?></h2>
<p>
<b>Region:</b> <?= $result["region"];?>
<b>Ville:</b> <?= $result["ville"];?>
<b>Annee:</b> <?= $result["annee"];?>
</p>
<p><?= $result["descriptif"];?></p>
<p><b>Prix:</b> <?= $result["prix"];?> Euros</p>
</div>
</div>
Chaque <div> à son #id ou .class qui peut etre configurer dans un fichier .css
Pour cette example tu a besoin le table 'voitures' et les colonnes suivantes:
color, image1, id, title, etat, region, ville, annee, descriptif, date, et prix - Dans ton base de données
chaque colonne a son valeur informatif qui sera affiché ou la valeur est utiliser pour metre la liste dans l'ordre (example : avec la colonne 'date' on peut demander de faire une liste de plus agees à plus récent)
Voila c'est pas facile mais pourtant très logique.
Bon courage pour la suite.
3 avril 2018 à 16:59
Merci je ne savait pas que je suis deja 'oldschool' voir même obsolète. Je voulait donner cette exemple à dlapatate pour montrer comment donner un valeur à des colonnes dans un table et comment les exploiter. Ensuite l'utilisation des types come int, set, enum ou des attributes devient plus evident en faissant des test et voir l'impact que ça generer sur le mis en page. (example difference entre VARCHAR et CHAR)
3 avril 2018 à 18:26
Comprends tu... ?
3 avril 2018 à 18:43