Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/07/2011, 17h42   #1
Invité de passage
 
Homme Erwan Finot
Inscription : janvier 2011
Messages : 18
Détails du profil
Informations personnelles :
Nom : Homme Erwan Finot
Localisation : France

Informations forums :
Inscription : janvier 2011
Messages : 18
Points : 2
Points : 2
Par défaut Raccourcir un URL

Bonjour à vous,
Je vous explique mon projet.
Je souhaite que mon outils récupère le paramètre DATA d'un élément flash qui est présent sur un autre site (l'utilisateur doit donner l'url) afin d'afficher l'élément flash sur mon site.
Jusque là j'ai réussi, mais je ne sais pas comment faire pour créer un lien permanent qui affiche cet page avec l'élément flash.

J'avais pensé à ajouté le DATA dans l'url (comme ceci: http://tools-minitroopers.netii.net/memorisateur/?data= ... ) mais la valeur est bien trop longue et l'url ne fonctionne donc pas.

Voici un exemple de page où mon outils doit récupérer le paramètre: http://airone70500.minitroopers.fr/b/view/bat2
Et voici mon outils: http://tools-minitroopers.netii.net/memorisateur/

Il faudrait peut-être que mon site enregistre le DATA et l'associe a une valeur (par exemple: 111aaaaaa2222aa ) ? Mais je ne sais pas comment faire ça et si il y a vraiment beaucoup de monde qui l'utilise cela deviendra peut-être lent et j'utilise un hébergeur gratuit donc pas une énorme capacité.

Sinon, je ne suis pas sûr d'être dans la bonne section .

Amicalement, Erwan.
AirOne70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2011, 09h07   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Hello

Tu pourrais faire un système de paires clé / valeurs sur base de données ou la clé serait un identifiant unique pour une data. A la reception du paramètre token, tu ira chercher la data en bdd. Tu peux fabriquer des identifiants en utilisant un hash du data par exemple avec hash
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 15/07/2011, 22h42   #3
Invité de passage
 
Homme Erwan Finot
Inscription : janvier 2011
Messages : 18
Détails du profil
Informations personnelles :
Nom : Homme Erwan Finot
Localisation : France

Informations forums :
Inscription : janvier 2011
Messages : 18
Points : 2
Points : 2
Ok, je vois se que tu veut dire.
Je n'ai encore jamais utilisé de BDD, et mon compte sur l'hébergeur a été supprimé... Je vais devoir m'y mettre !
Merci de ton aide (pour le moment).
AirOne70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2011, 12h38   #4
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Tu n'est pas forcément obligé de passer par la DB. Tu peux faire ça avec des fichiers .ini aussi, ça fonctionne bien pour les paires clés/valeurs
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2011, 17h33   #5
Invité de passage
 
Homme Erwan Finot
Inscription : janvier 2011
Messages : 18
Détails du profil
Informations personnelles :
Nom : Homme Erwan Finot
Localisation : France

Informations forums :
Inscription : janvier 2011
Messages : 18
Points : 2
Points : 2
D'accord, je vais essayer.

Une BDD serait plus rapide qu'un .ini ?
AirOne70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2011, 18h00   #6
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Citation:
Envoyé par AirOne70 Voir le message
D'accord, je vais essayer.

Une BDD serait plus rapide qu'un .ini ?
C'est possible, le temps d'accès à un fichier sont souvent lents. Correctement optimisé et avec des requêtes préparées, une table pourrait bien être plus rapide.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2011, 18h47   #7
Invité de passage
 
Homme Erwan Finot
Inscription : janvier 2011
Messages : 18
Détails du profil
Informations personnelles :
Nom : Homme Erwan Finot
Localisation : France

Informations forums :
Inscription : janvier 2011
Messages : 18
Points : 2
Points : 2
Ok, je verrai ça quand le site sera hébergé alors. Un INI suffira jusque là.
Pour le moment, j'ai récupéré le DATA et je l'ai crypté avec MD5 ; il me reste à envoyer la paire dans le INI et à le récupérer dans le INI en fonction du MD5.

Normalement dans un INI le séparateur est un "=" mais est-ce possible d'utiliser une virgule à la place ?

EDIT 1:
Et... je ne parviens pas à écrire dans le ini à partir de mon code PHP. J'ai utiliser un tutoriel ( http://cbna.forumactif.com/t2672-tut...s-fichiers-ini ) mais sans succès. Je pense que je loupe une étape... ou j’écris mal le code...

EDIT2:
Tout bien réfléchi, je vais sûrement utiliser une BDD, car un fichier texte sera peut-être un peu trop juste. Je vais commencer dès demain.
AirOne70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2011, 10h17   #8
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Citation:
Envoyé par AirOne70 Voir le message
Normalement dans un INI le séparateur est un "=" mais est-ce possible d'utiliser une virgule à la place ?
Dans ce cas utilise un CSV.

Si le nombre d'entrée dans ce fichier est important, une table sera la plus rapide.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2011, 17h15   #9
Invité de passage
 
Homme Erwan Finot
Inscription : janvier 2011
Messages : 18
Détails du profil
Informations personnelles :
Nom : Homme Erwan Finot
Localisation : France

Informations forums :
Inscription : janvier 2011
Messages : 18
Points : 2
Points : 2
Voilà, tout fonctionne ou presque.
J'ai essayé d'ajouter un vérificateur avant l'ajout dans la BDD, qui vérifie si le MD5 n'a pas déjà été ajouté avant, mais il ne fonctionne pas (il crois que le MD5 n'est pas encore présent alors qu'il y est).

Code PHP :
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
 
$reqq = $bdd->prepare('SELECT MD5 FROM DATA WHERE MD5 = ? LIMIT 1');
 
$reqq->execute(array($dataH));
 
    if (mysql_num_rows($reqq) == 1) {
 
		echo 'MD5 déjà présent !';
 
		} else {
 
$req = $bdd->prepare('INSERT INTO DATA(MD5, DATA) VALUES(:md5, :data)');
 
$req->execute(array(
 
	'md5' => $dataH,
 
	'data' => $data[1]
 
	));
 
    $req->closeCursor();
 
      }
 
$reqq->closeCursor();
AirOne70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2011, 17h39   #10
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
MD5 est aussi une fonction mysql, pour des raisons de sécurité, tu devrais spécifier que c'est une colonne en utilisant des backquotes:
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/07/2011, 17h57   #11
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Il faut choisir entre les extensions PDO et mysql : mysql_num_rows n'a rien à faire là !
Code :
if (FALSE !== $reqq->fetch()) {
(pour garder l'idée de base : sinon méthode rowCount qui n'est pas portable ou un SELECT COUNT + fetchColumn)

PS : les closeCursor seraient ici inutiles (celui du INSERT l'est de toute façon)
julp est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 20/07/2011, 19h48   #12
Invité de passage
 
Homme Erwan Finot
Inscription : janvier 2011
Messages : 18
Détails du profil
Informations personnelles :
Nom : Homme Erwan Finot
Localisation : France

Informations forums :
Inscription : janvier 2011
Messages : 18
Points : 2
Points : 2
Citation:
Envoyé par Benjamin Delespierre Voir le message
MD5 est aussi une fonction mysql, pour des raisons de sécurité, tu devrais spécifier que c'est une colonne en utilisant des backquotes:
Citation:
Envoyé par julp Voir le message
Il faut choisir entre les extensions PDO et mysql : mysql_num_rows n'a rien à faire là !
Code :
if (FALSE !== $reqq->fetch()) {
(pour garder l'idée de base : sinon méthode rowCount qui n'est pas portable ou un SELECT COUNT + fetchColumn)

PS : les closeCursor seraient ici inutiles (celui du INSERT l'est de toute façon)
Merci beaucoup à vous deux, tout fonctionne à merveille !
A une prochaine fois peut-être !

AirOne70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h57.


 
 
 
 
Partenaires

Hébergement Web