|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juin 2012 Messages : 12 ![]() |
Bonjour,
alors voilà je sollicite votre aide sur le point suivant. J'utilise une base de données PSQL contenant une colonne d'adresses ip de type inet. Et dans ma page php, j'ai un tableau d'adresses ip (en string donc). J'ai besoin d'effectuer des comparaisons entre mon tableau et les ip de ma base de données afin de modifier certaines ip de la base. S'il s'agissait de string ça serait surement pas un problème mais là, je n'y parviens pas vraiment. J'ai regardé du coté de inet_ntop() et inet_pton() mais ça n'a pas fonctionné non plus. Je débute et je m'y suis peut être mal pris. Si vous pouviez m'aiguiller sur ce coup. Cordialement, Toiine |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Étudiant Inscription : avril 2012 Messages : 601 ![]() |
Bonjour,
tu compare directement en SGBD ou tu récupère une valeur d'une colonne inet de ton serveur PGSQL ? Si tu compare directement en SGBD tu peut utiliser la fonction CAST qui va traduire ta chaîne de caractère dans le format voulu. Si tu récupère une colonne de ton serveur, quel format cette valeur à t'elle en PHP ? (String, Int, ...) Quel format on les adresse ip que tu veut comparer ? Chaîne de caractère : 192.168.0.1 ? |
|
|
00
|
|
|
#3 | ||||
|
Invité de passage
![]() Inscription : juin 2012 Messages : 12 ![]() |
Bonjour,
oui, j'essaie directement de faire une requete UPDATE dans mon script php afin de modifier une valeur (inet) de ma base psql si elle est différente d'une valeur que j'ai sous forme de string dans un tableau php. Voici ce que j'aimerai faire : Code :
Avec un cast, ça donnerait ça ? Code :
|
||||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Étudiant Inscription : avril 2012 Messages : 601 ![]() |
il te suffit de tester sur des données qui ne craigne pas (données de test).
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : juin 2012 Messages : 12 ![]() |
Ca n'a pas l'air de fonctionner.
J'ai essayé comme ceci : Code :
$request = "UPDATE ip SET no_ip = CAST('1.1.1.1' AS inet) WHERE no_ip = CAST('42.42.42.42' AS inet)"; Code :
$request = "UPDATE ip SET no_ip = CAST('1.1.1.1' AS inet) WHERE CAST(no_ip AS text) = '42.42.42.42'"; |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : juin 2012 Messages : 12 ![]() |
Merci, j'arrive à faire mes tests maintenant, en fait y'a pas besoin de cast, c'était de ma faute.
Je vais me pencher sur le vrai problème maintenant. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com