Bonjour a tous !
Je suis en train de réécrire du code que j'avais écrit en procédural pour "tester" .
Donc je réécrit tout se beau monde de façon plus propre et réutilisable !
Donc mon code est fait pour créer des tinyurl avec mon propore nom de domaine.
Et j'ai besoin de travailler avec une base de données ,le truc c'est que je n'arrive pas a intégré PDO dedans ...
Voila le code sans PDO :
Code appelé dans mon contrôleur comme ceci ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 <?php class LitiiUrl { private $hash; private $urlBrowser; private $redirect; public function generateLitiiKey($nbcar)//Génère une clé alléatoire { $string = ""; $chaine = "abcdefghijklmnopqrstuvwxyzABCDEFGJHIJKLMNOPQRSTUVWXYZ0123456789";//les caractères autorisés dans la clé. srand((double)microtime()*1000000); for($i = 0; $i < $nbcar; $i++) { $string .= $chaine[rand() % strlen($chaine)]; } $this->hash=$string; return $string; } public function getLitiiUrl() { $this->urlBrowser = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; echo '<br>'.$this->urlBrowser; } public function WriteDataBase() { $resultat=executeRequeteSQL("INSERT INTO tinyurl (url_utilisateur , url_reduite) VALUES('$this->urlBrowser' , '$this->hash')", 'Error : Litii Url Not write in database '); return $resultat; } public function fecthDataBase() { $reponse = mysql_query('SELECT url_utilisateur , url_reduite FROM tinyurl WHERE url_reduite="'.$this->hash.'"');//Sélectionne tous les champs de la table tynirul lorsque le champ url_reduite est égal à YRfz3Z while ($donnees = mysql_fetch_array($reponse)) { echo '<br>'.'la cle est ' . $donnees['url_reduite'] . ' et l\'adresse correspondante est : '.$donnees['url_utilisateur'].'<br />'; $redirection=$donnees['url_utilisateur']; } } } ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?php function index() { $this->load->library('LitiiUrl'); echo $this->litiiurl->generateLitiiKey(6); echo $this->litiiurl->getLitiiUrl(); echo $this->litiiurl->writeDataBase(); echo $this->litiiurl->fecthDataBase(); die(); ?>
Partager