Site intranet - PHP - Programmation
Marsh Posté le 12-08-2002 à 11:53:18
j'en ai deja fait kkes uns...
si tu debute a fond, tu trouvera pas mal de chose sur des sites tels que www.phpdebutant.com
un serveur apache, php et mysql avec... poster les messages tu met soit un forum (agora, phpbb par exemple), ou plus betement un truc ressemblant a un serveur de news, yen a plein des deja fait partout
Marsh Posté le 12-08-2002 à 14:24:48
mon premier probleme vient des diff niveaux d'utilisateurs...
-----------------------------------------------------------
par ex:
TOTO
TATA
TATI
ont le droit de voir X choses
TUTU
TUTI
ont le droit de voir X+Y choses
TÉTÉ
a le droit de voir l'ensemble des choses
-----------------------------------------------------------
moi je ferais une table pour chaque niveau de "sécurité", mais comment faire lors du login, pour qu'avec des noms d'utilisateurs <> ont puisse voir la mm chose
Marsh Posté le 12-08-2002 à 15:11:47
Tu fais unte table avec de tes membres avec un chiffre a coté par exemple 0 pour admin 1 pour la rh etc...
apres tu as ca :
Si la personne a un chifre <2 alors ca tu l'affiches
Si la personne a le chiffre 0 ca tu peux l afficher aussi
etc etc
Marsh Posté le 14-08-2002 à 10:04:45
oki g a peu pres compris, mais comment je fait pour pouvoir afficher seulement certaines parties, comment faut il que j'organise mon script(dsl d'ê boulet, mé fo bien passer par la qqfois :s )
merki
Marsh Posté le 14-08-2002 à 10:18:24
dakor, v essayer!
mais si on fait plusieurs includes de fichiers html diff, ça va donner koi?(les fichiers html servant à donner une apparence au site web
Marsh Posté le 14-08-2002 à 10:21:06
Une adresse : http://www.phpdebutant.com
Manges déjà leur tutoriaux (ils sont clairs et compréhensible et pas longs), puis reviens nous voir dans quelques jours (une fois que tu auras tout bien assimilé).
Marsh Posté le 14-08-2002 à 10:37:08
erf, je suis censé bosser donc si je lis tt les tuts et kil ya la moitié ki ne me concernent pas, je perds mon temps .. enfin, bon, ça ne peut être ke bénéfique :s
Marsh Posté le 14-08-2002 à 10:39:43
Vu ta question précédente, je crois que ce sera tout benef
Marsh Posté le 14-08-2002 à 14:33:39
Code :
|
ce genre de code c tt faux, ou ya un chti peu de bon?
Marsh Posté le 14-08-2002 à 14:43:04
Non, ce genre de code est très intéressant dans le cas d'un site multilangue par exemple Mais ya mieux :
tu fais un tableau :
$info = array("php is good !","c'est cool le php","php ist gut","me gusta mucho el php !" );
$langue = // 0 (0 = anglais, 1 = français, 2 =allemand, 3 =espagnol)
echo $info[$langue];
c'est + mieux...
Toi pour ton problème, c'est plutôt des includes qu'il te faut :
Par exemple, le haut de ta page avec <html><head> etc...
ensuite un tableau (ou mieux des css) avec à gauche les propositions et à droite le résultat.
Genre :
ton tableau, et à droite include"page de droite".$no_de_page.
Marsh Posté le 14-08-2002 à 16:56:48
des fois ya des trucs ki me depassent (svt mm)
Code :
|
la valeur "$auth. " dans la base est e type enum, on a donc le choix entre a,b,c,d, ou e .
Pour les tests, chaque login renvoi une valeur différente de $auth. quand je me le login "admin", cela devrait retourner, a ? et bien non, cela retourne q
Marsh Posté le 19-08-2002 à 12:32:29
dpro a écrit a écrit : des fois ya des trucs ki me depassent (svt mm)
|
t'as un pb il me semble dans la lecture des résultats de la requete :
Code :
|
Marsh Posté le 19-08-2002 à 14:10:03
peut-etre, mais si y avait un réel prob, cela ne marcherait pas, et afficherait un msg d'erreur; et là, non! php renvoi une valeur fantaisiste ..... (q) c'est étonnant, non?
Marsh Posté le 19-08-2002 à 14:46:27
Code :
|
Marsh Posté le 19-08-2002 à 14:47:10
ok, je@nb, mais maintenant il ne me renvoi que l'auth ayant l'id 1 (a), c'est plus logique, mais il devrait en renvoyer un different à chaque login
tbl_user :
+----+---------------+-------+------+------+
| id | pseudo | login | pwd | auth |
+----+---------------+-------+------+------+
| 1 |admin |admin |dpro |a |
+----+---------------+-------+------+------+
| 2 |direction gene |dg |dg |b |
+----+---------------+-------+------+------+
| 3 |direction |d |d |c |
+----+---------------+-------+------+------+
| 4 |resp de service |rds |rds |d |
+----+---------------+-------+------+------+
| 5 |autres |a |a |e |
+----+---------------+-------+------+------+
Marsh Posté le 21-08-2002 à 10:20:38
Code :
|
ça devrait marcher ce code, et pourtant, non, help
Marsh Posté le 21-08-2002 à 11:57:44
Le mieu est de faire comme dans NT :
Une table contenant les utilisateurs
Une table contenant les groupes
Une table contenant la liste des éléments du site
Une table contenant le lien entre groupe et élément, avec un type d'action à chaque fois.
Règles :
Utilisateur appartient à un groupe
A un groupe et un élément donné il y a un type de droit (1 lire,2 ajouter,3 supprimer, 4 mettre à jour) S'il n'y a pas de ligne renseignée pour l'élement, alors l'utilisateur n'a aucun droit sur l'élément.
Mais bon courage pour mettre en place, c'est assez lourd
Marsh Posté le 21-08-2002 à 12:13:25
dsl black_lord, ça ne marche pas, il me retourne la valeur par défaut (aucune identification)
MagicBuzz>C sur ke c une tres bonne idée, mais bon, chuis à ma 3eme semaine de php-mysql
Pour joindre des tables c'est JOIN ou INNERJOIN, arf, si tu ty conné bien, tu pourré mayday pliz
Marsh Posté le 21-08-2002 à 12:16:40
Pour faire des jointures, oublie tes cours de merde qui ne sont là que pour t'embrouiller la tête.
Exemple de jointure :
SELECT USER.NAME, GROUP.NAME
FROM USER, GROUP
WHERE USER.GROUP_ID = GROUP.ID
ORDER BY GROUP.NAME, USER.NAME
=> Comme tu vois, j'énumère la liste des tables participant à la jointure, puis je ne fait qu'une égalité sur les champs Primary Key et Foreign Key. C'est bien plus lisible et ça change rien aux perfs.
(pour info, cette requête va chercher les utilisateurs dans la base et affiche leur nom et leur groupe, triés par groupe et sous-triés par nom d'utilisateur.
Marsh Posté le 21-08-2002 à 14:51:28
euh...
chais pu faire ça, moi je fait ça direct dans SQL Server via les outils d'admin.
sinon, au pire, si elle est pas défini physiquement dans la base, ça change pas grand chose aux perfs, c'est surtout au niveau des contraintes de cohérence que ça pose problème.
Marsh Posté le 21-08-2002 à 15:25:43
arf, si t pa tro OQP, esske tu pourrais m'écrire le début du code pcke là, chuis planté !
je comprends bien ce que tu eut faire, mais je ne vois pas du tt kmt je peut le mettre en place pr que cela fonctionne....
arf
Marsh Posté le 21-08-2002 à 15:52:34
Désolé, mais j'y connais que dalle en PHP
Je peux t'écrire les requêtes SQL que tu veux, mais pour le PHP, demande à qq1 d'autre
Marsh Posté le 21-08-2002 à 15:56:27
bah c dejà ça .....
le php j'éssairais d'en faire mon affaire si j'ai déjà le support mysql....
Marsh Posté le 21-08-2002 à 16:22:24
dpro, fait moi un backup de cette table avec les insert de données, v tester ce bout de script ché moi, car je ne vois pas ce ki bug;
met error_reporting('E_ALL'; o début du script pour voir les erreurs
Marsh Posté le 21-08-2002 à 18:02:04
oulà la table user? bah, je l'ai redessinée un peu plu haut, tu veut ke je fasse un dump ou qqch de la base?
met error_reporting('E_ALL';
oui mais il ne retourne pas d'erreurs??atten j'essaie
Marsh Posté le 21-08-2002 à 18:14:40
si on trouve pas, oué fait moi un dump de la table car je ne connais pas sa structure
Marsh Posté le 23-08-2002 à 09:38:19
dsl pr le retard je bossais pas jeudi ....
voici donc le dump de la base "intranet"
Code :
|
Marsh Posté le 23-08-2002 à 15:53:03
Code :
|
Bon en fait, il faut mettre global o tablo sinon il n'est pas sépcifié dans le script mais seulement dans la fonction.
Sinon fo mettre les break donc.
G mis $_GET['login'] car g passé les login en url pour tester. Met $_POST['login'] si c en formulaire ou $_SESSION['login'] si tutilise les sessions ..
Sinon regarde la table c chelou, qd tu met directeur il te dit responsable de service et inversement
Marsh Posté le 23-08-2002 à 16:06:09
G pas trop compris le fctionnmt de _post mais je l'ai mis et ça marche, idem pour _sessions
Marsh Posté le 23-08-2002 à 16:19:09
Citation : Sinon regarde la table c chelou, qd tu met directeur il te dit responsable de service et inversement |
OUUUPSS chtite erreur d'innatention de ma part dans un ancien message il fallait mettre
Code :
|
au lieu de
Code :
|
voili, donc ça marche comme sur des roulettes !!
maintenant, passons, aux choses sérieuses : les cookies d'ailleurs, les cookies, sont mieux & + simples d'utilisation que les sessions, non?
Marsh Posté le 12-08-2002 à 11:29:29
Bonjour,
je débute totalement en php-mysql et j'aurais aimé developer un site intranet avec une gestion spécifique des utilisateurs (plusieurs niveaux d'acces tels que, l'admin, qui peut tout modifier, tout voir, tout effacer (GOD ),la direction generale, qui voit tout, [...] et les autres qui ne voient que le reglement intérieur, les news ou autre)
le truc c'est qu'il faudrait pouvoir faire en sorte que la secretaire(mignonne mé un toutipeu conne !!lol) puisse simplement ouvrir son navigateur, se loguer, et poster un article dans une catégorie choisie....
je sais pas du tt par ou commencer, si vs avez qq idées je vous en serait reconnaissant
merki