![]() |
| connection bd avec MAGIC 3.5 | |
| JJV | 19-Oct-2006/17:26:09+2:00 |
| bonsoir je craque, depuis 3 jours...help me config serveur de societeg.com => apache magic mysql je souhaite récuperer des donnees dans ma base. 1/voici la page .rhtml
<html>
<head>
<title>Utilisation d'une source de données</title></head>
<body>
<rebol>
library/private %db.r
conn: db/datasource/private %valnet.rds
datagrid conn/doSQL "select * from nom"
conn/close
</rebol>
</body>
</html>
2/ voici le code erreur
make object! [
code: 505
type: 'access
id: 'invalid-spec
arg1: mysql://valnet_1:motdepasse@mysql.societeg.com/valnet
arg2: none
arg3: none
near: [ret/connection-port: open to-url dburl
ret/command-port:
]
where: 'datasource
]
A/ voici le code db.r
[code]
REBOL [
subject: "Librairie de connexion à une base de données"
version: 1.1
author: "Olivier Auverlot"
]
db: make object! [
datasource: func [ filename [ file! ] "Fichier décrivant la source de données"
/private "La source de données est définie dans le répertoire courant"
/local obj lpath merr dburl ident ret
] [
ret: make object! [
connection-port: none
command-port: none
doSQL: func [ request ] [
insert command-port request
return copy command-port
]
close: does [
system/words/close command-port
system/words/close connection-port
]
]
either not private [ lpath: join m-datasources-path filename ] [ lpath: join curdir filename
]
if error? merr: try [
obj: context load lpath
either not none? obj/user [
ident: copy join obj/user [ ":" obj/password "@" ]
] [ ident: copy "" ]
dburl: copy join obj/dbtype [ "://" ident ]
if not none? obj/host [
dburl: copy join dburl [ obj/host "/" ]
]
dburl: copy join dburl obj/database
ret/connection-port: open to-url dburl
ret/command-port: first ret/connection-port
return ret
] [
m-error (mold disarm merr)
return false
]
]
]
B/ voici le code de valnet.rds
rebol[]
[
dbtype: "mysql"
host: "mysql.societeg.com"
user: "valnet_1"
password: "motdepasse"
database: "valnet"
]
merci pour votre aide Jean-jacques | |
| coccinelle | 20-Oct-2006/8:50:46+2:00 |
| Hello Jean-Jacques, A mon avis, d'une manière ou d'une autre le protocole mysql n'est pas chargé dans ton application. J'ai une question à mon tour, où peut-on télécharger magic 3.5 ? Merci, Marco. | |
| JJV | 20-Oct-2006/10:20:55+2:00 |
| Bonjour Marco, Sur ce fil Francois et Olivier évoquaient un problème similaire http://www.codeur.org/forum/message.php?ID_Sujet=3044&page=2 Magic Sur le site perso d'Olivier Auverlot http://perso.numericable.fr/~oauverlo/ le lien download de Magic 35e http://perso.numericable.fr/~oauverlo/C591593862/E20050812232525/Media/File1.zip jean-jacques | |
| coccinelle | 20-Oct-2006/15:03:45+2:00 |
| Merci pour les liens. Pour ton problème, il te faut utiliser le protocol de Nenad, c'est ici http://softinnov.org/rebol/mysql.shtml Ensuite, tu places le fichier mysql-protocol.r avec le fichier db.r et tu adapte ta page ainsi :
<html>
<head>
<title>Utilisation d'une source de données</title></head>
<body>
<rebol>
library/private %db.r
library/private %mysql-protocol.r
conn: db/datasource/private %valnet.rds
datagrid conn/doSQL "select * from nom"
conn/close
</rebol>
</body>
</html>
J'espère que ça peut résoudre ton problème. Marco. | |
| JJV | 20-Oct-2006/23:36:47+2:00 |
| merci Marco pour la piste mysql-protocol.r après de nombreuses manipssssssss voici le code qui fonctionne 1/page .rhtml
<html>
<head>
<title>Utilisation d'une source de données</title></head>
<body>
<rebol>
library/private %db.r
library/private %mysql-protocol.r
db: open mysql://valnet_1:motdepasse@localhost/valnet
insert db "SELECT * FROM tutoriel"
print copy db
close db
</rebol>
</body>
</html>
merci encore Jean-jacques | |
| coccinelle | 21-Oct-2006/9:11:07+2:00 |
| Hello Jean-Jacques, Content que quelque chose fonctionne. J'imagine que si tu n'est pas arrivé à faire fonctionner le composant datagrid, c'est que le fichier html.r n'était pas chargé comme c'était déjà pas le cas pour sql-protocol.r De plus, datagrid est une fonction de l'objet html, donc elle doit être appellée ainsi : html/datagrig ... J'aurais tendance à faire les choses comme ça :
<html>
<rebol>
; Initialisation de toutes les librairies et connexion et tout ce qui pourrait l'être si nécessaire
library/private %html.r
library/private %db.r
library/private %mysql-protocol.r
conn: db/datasource/private %valnet.rds
</rebol>
<head>
<title>Utilisation d'une source de données</title>
</head>
<body>
<rebol>
html/datagrid/sql [conn "SELECT * FROM tutoriel"]
</rebol>
</body>
<rebol>
; Ferme la connection et nettoie tout ce qui doit l'être si nécessaire.
conn/close
</rebol>
</html>
En organisant tes pages ainsi, ce sera plus facile de t'y retrouver. Marco. | |
| coccinelle | 21-Oct-2006/9:30:23+2:00 |
| L'erreur est humaine. En relisant la doc, je te suggère d'essayer plutôt ça :
<html>
<rebol>
; Initialisation de toutes les librairies et connexion et tout ce qui pourrait l'être si nécessaire
library/private %html.r
library/private %db.r
library/private %mysql-protocol.r
conn: db/datasource/private %valnet.rds
</rebol>
<head>
<title>Utilisation d'une source de données</title>
</head>
<body>
<rebol>
html/datagrid conn/doSQL "SELECT * FROM tutoriel"]
</rebol>
</body>
<rebol>
; Ferme la connection et nettoie tout ce qui doit l'être si nécessaire.
conn/close
</rebol>
</html>
Marco. | |
| JJV | 21-Oct-2006/17:05:31+2:00 |
| Bonjour Marco j'ai donc fait des essais avec le code de la doc Magic 3.5 mais rien ne fonctionne par contre avec celui-ci ok effectivement la fonction html est très intéressante. page .rhtml
<html>
<head>
<title>Utilisation d'une source de données</title></head>
<body>
<rebol>
library/private %html.r
library/private %db.r
library/private %mysql-protocol.r
db: open mysql://valnet_1:motdepasse@localhost/valnet
insert db "SELECT * FROM tutoriel"
print html/datagrid/noborder copy db
close db
</rebol>
</body>
</html>
voici ma page de résultat ok mais j'ai un noneen fin de page qui est gênant 1 Napoléon Bonaparte napo@corse.fr 2 Arc Jeanne bergere@domremy.fr 3 Empereur Marc-Aurèle empereur@rome.it 4 Cretinus Alpinus idiot@village.org 5 hhCretinus hhAlpinus hhidiot@village.org 6 Napoléon Bonaparte napo@corse.fr 7 Arc Jeanne bergere@domremy.fr 8 Empereur Marc-Aurèle empereur@rome.it 9 Cretinus Alpinus idiot@village.org 10 hhCretinus hhAlpinus hhidiot@village.org 11 Napoléon Bonaparte napo@corse.fr 12 Arc Jeanne bergere@domremy.fr 13 Empereur Marc-Aurèle empereur@rome.it 14 Cretinus Alpinus idiot@village.org 15 hhCretinus hhAlpinus hhidiot@village.org [code] none [/code] Comment faire pour le faire disparaitre? merci et bon week end à tous Jean-jacques | |
| coccinelle | 21-Oct-2006/20:49:25+2:00 |
| Enlève le print devangt le html/datatgrid ... | |
| JJV | 21-Oct-2006/21:57:30+2:00 |
| YES évidement Marco Jean-jacques | |
|
Login required to Post. | |