Veuillez vous connecter ou créer un compte pour suivre ce topic
Ce topic est suivi par: Doudou
Ce topic a été résolu
Auteur Sujet: .SQL de primFX

Florian

Messages: 73

Hello,

J'ai regarder les vidéos sur le forum de PrimFX, mais le problème ce que quasiment a chaque vidéos il modifier le .sql, donc j'ai pas du tout suivis sur ça donc je me demande si une personne a bien reussir a suivre le tuto et pourrais me l'envoyer x)

Merci :3
Publicité

Doudou

Messages: 6

Florian, je te conseil pas de faire du copier coller car sinon tu auras du code d'un peu tout le monde mais tu auras rien appris.

PRIMFX explique le PHP orienté objet, 
PHP peut être sois procédurale, comme tout nouveau les nouveaux développeurs vont utiliser php, sois orienté objet plus propre et professionnel.
L'orienté objet est assez difficile à prendre en main car nous devons réfléchir autrement, exemple pour SQL.

En procédurale tu vas faire ceci :

$bdd = new mysql_connect($serveur, $user, $pass, $base);
$bdd->set_charset("utf8");
if ($bdd->connect_error) { die('Erreur de connexion ('.$bdd->connect_error.')'. $bdd->connect_error); }

C'est pas très lisible Sourire donc pour cela nous allons créer une class sql qui va répertorier tout les fonctions de la bdd comme un fetch_All, query...
Pourquoi faire ça, déjà pour la sécurité, l’optimisation, le rangement... il faut toujours ce dire que quelques peut passer dernière toi pour règler un problème donc ton code dois être niquel et bien documenté.
A la fin ça donnera ça,

$bdd->sql_connect();
$bdd->sql_query("SELECT * FORM table WHERE id = ?");
$bdd->sql_disconnect();
$bdd->sql_fetch_all();

On ouvre une connexion vers la bdd, on envoi la requête, on ferme la connexion et on fetch. Pour comprendre je te conseil de regarder la documentation PHP function MYSQL ou PDO Sourire. Tu vas toujours reprendre les mêmes tables pour plusieurs car elle change pas comme sql, form(html)... tu les améliores tout le temps.

Le PDO est encore autre chose mais je te conseil de regarder function mysql avant d'attaquer le pdo.
J’espère que j'ai pu t'aider Clin d'oeil 

Florian

Messages: 73

Bonjour,

Ce n'est pas ça la question, c'est sur le tuto du Forum il modifie quasiment a chaque épisode le .sql est je me suis perdu, mais je croit que j'ai réussir a reprendre le fil, je regarde ça et je modifie ce message au cas ou Clin d'oeil

Doudou

Messages: 6

Oui mais je te dis qu'il va tout le temps le changer car c'est un fichier que tu vas changer sur chaque Project et que tu vas copier coller à chaque fois. Mais si tu as repris le fil t'en mieux Sourire Bon apprentissage alors

PaulLavieille

Messages: 123

@Florian Si tu réussi à le faire, je le veux bien haha ^^

Florian

Messages: 73

@PauLavielle faudrait d'abord que j'arrive au PHP x)

EDIT c'est bon j'extrait tout

PaulLavieille

Messages: 123

Ah :/

Doudou

Messages: 6

Vous voulez quoi au final ?

Florian

Messages: 73

-- phpMyAdmin SQL Dump
-- version 4.0.10.7
-- http://www.phpmyadmin.net
--
-- Client: localhost:3306
-- Généré le: Ven 15 Avril 2016 à 18:38
-- Version du serveur: 10.0.24-MariaDB
-- Version de PHP: 5.4.31
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!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: `forum`
--
-- --------------------------------------------------------
--
-- Structure de la table `f_categories`
--
CREATE TABLE IF NOT EXISTS `f_categories` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
--
-- Contenu de la table `f_categories`
--
INSERT INTO `f_categories` (`id`, `nom`) VALUES
(1, 'Plainte et réclamation');
-- --------------------------------------------------------
--
-- Structure de la table `f_messages`
--
CREATE TABLE IF NOT EXISTS `f_messages` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_topic` int(11) NOT NULL,
  `id_posteur` int(11) NOT NULL,
  `date_heure_post` datetime NOT NULL,
  `date_heure_edition` datetime NOT NULL,
  `meilleure_reponse` int(1) NOT NULL,
  `contenu` text NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;
--
-- Contenu de la table `f_messages`
--
INSERT INTO `f_messages` (`id`, `id_topic`, `id_posteur`, `date_heure_post`, `date_heure_edition`, `meilleure_reponse`, `contenu`) VALUES
(1, 1, 9, '2016-04-15 18:35:14', '0000-00-00 00:00:00', 0, 'test'),
(2, 1, 9, '2016-04-15 18:36:14', '0000-00-00 00:00:00', 0, 'gtrgtrg'),
(3, 1, 9, '2016-04-15 18:36:45', '0000-00-00 00:00:00', 0, 'vfvdfvfdvfdv'),
(4, 1, 9, '2016-04-15 18:36:50', '0000-00-00 00:00:00', 0, 'bgfbgf'),
(5, 1, 9, '2016-04-15 18:36:59', '0000-00-00 00:00:00', 0, 'bgfb'),
(6, 1, 9, '2016-04-15 18:37:01', '0000-00-00 00:00:00', 0, 'bgfb'),
(7, 1, 9, '2016-04-15 18:37:07', '0000-00-00 00:00:00', 0, 'bgb');
-- --------------------------------------------------------
--
-- Structure de la table `f_souscategories`
--
CREATE TABLE IF NOT EXISTS `f_souscategories` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_categorie` int(11) NOT NULL,
  `nom` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
--
-- Contenu de la table `f_souscategories`
--
INSERT INTO `f_souscategories` (`id`, `id_categorie`, `nom`) VALUES
(1, 1, 'Plainte'),
(2, 2, 'Réclamation');
-- --------------------------------------------------------
--
-- Structure de la table `f_topics`
--
CREATE TABLE IF NOT EXISTS `f_topics` (
  `id` int(11) NOT NULL,
  `id_createur` int(11) NOT NULL,
  `sujet` text NOT NULL,
  `contenu` text NOT NULL,
  `date_heure_creation` datetime NOT NULL,
  `resolu` tinyint(1) NOT NULL,
  `notif_createur` tinyint(1) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Contenu de la table `f_topics`
--
INSERT INTO `f_topics` (`id`, `id_createur`, `sujet`, `contenu`, `date_heure_creation`, `resolu`, `notif_createur`) VALUES
(1, 9, 'Plainte envers Le test', 'jsute le test', '2016-04-15 18:14:09', 0, 0),
(0, 9, 'Un simple test', 'grtgtr', '2016-04-15 18:31:39', 0, 0);
-- --------------------------------------------------------
--
-- Structure de la table `f_topics_categories`
--
CREATE TABLE IF NOT EXISTS `f_topics_categories` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_topic` int(11) NOT NULL,
  `id_categorie` int(11) NOT NULL,
  `id_souscategorie` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
--
-- Contenu de la table `f_topics_categories`
--
INSERT INTO `f_topics_categories` (`id`, `id_topic`, `id_categorie`, `id_souscategorie`) VALUES
(1, 0, 1, 1),
(2, 1, 1, 1);
-- --------------------------------------------------------
--
-- Structure de la table `membres`
--
CREATE TABLE IF NOT EXISTS `membres` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `users` varchar(255) NOT NULL,
  `password` text NOT NULL,
  `mail` text NOT NULL,
  `confirmed` int(11) NOT NULL,
  `key_confirmed` text NOT NULL,
  `grade` int(11) NOT NULL DEFAULT '0',
  `banni` int(11) NOT NULL DEFAULT '0',
  `date_ban` int(11) NOT NULL,
  `ip_creation` text NOT NULL,
  `date_inscription` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;
--
-- Contenu de la table `membres`
--
INSERT INTO `membres` (`id`, `pseudo`, `password`, `mail`, `confirmed`, `key_confirmed`, `grade`, `banni`, `date_ban`, `ip_creation`, `date_inscription`) VALUES
(9, 'test', 'mdp', [email protected]', 1, 'k7vnwwkwuq14pmjv4hb12rm6rv2x7x', 6, 0, 0, '1.1.1.1', 2147483647);
/*!40101 SET [email protected]_CHARACTER_SET_CLIENT */;
/*!40101 SET [email protected]_CHARACTER_SET_RESULTS */;
/*!40101 SET [email protected]_COLLATION_CONNECTION */;

PS pour la table membres, j'ai mis la mienne donc je sais pas si c'est pseudo pour PrimFX ( je croit de base pour moi c'est users :x 

Nobodief

Messages: 73

@doudou

Salut, il est vrai que le php orienté objet est beaucoup plus esthétique, après dire que c'est plus professionnelle cela reste à voir, de toute façon si ont part sur le principe, ce qui est le plus professionnelle en 2016 (de manière général) c'est de nous sortir tout sur du wordpress ou sur l'utilisation de framework tel que symphony 2 où tout est déjà fait.

Personnellement je pense que la méthode orienté objet est à utiliser dans certain cas, il n'est pas nécessaire de l'employer pour un simple blog ou un blog/forum comme primfx, mais plutôt pour des sites E-commerce ou les jeux de gestion en ligne par navigateur ou même encore les API.

Il me semble que mysql_connect est obsolète désormais il faut utiliser mysqli.

$bdd = new mysqli_connect($serveur, $user, $pass, $base); 
$bdd->set_charset("utf8"); 
if ($bdd->connect_error) { die('Erreur de connexion ('.$bdd->connect_error.')'. $bdd->connect_error); } 


Veuillez vous connecter ou créer un compte pour poster une réponse