Aller au contenu

YannCo

Hubmaster
  • Compteur de contenus

    106
  • Inscrit(e) le

  • Dernière visite

Tout ce qui a été posté par YannCo

  1. Salut et bienvenue au HUB et dans le monde du PHP; Bon, c'était bien tenter et c'est à peu près comme ça que je procède. Seulement, à moins qu'il soit trop tard et que je sois à coté de la plaque, là tu dis que si il y a un GET aller à la page d'accueil, en utilisant la même méthose, que je n'ai jamais testé, ça devrait plutot être if(!$_SERVEUR .... { .. } le point d'intérogation "!" avant ta variable va donner une contradiction à ta condition, pour être plus clair si il n'y a pas ... Par contre j'utilise une autre méthode ton GET a une 'identité", name $_GET['id_user'] (par exemple) donc tu peux tester si il existe if(!$_GET['id_user']) { echo "Bye"; } Seulement on pourra quant même atteindre ta page en mettant une url bidon avec index.php?id_user=1 Donc il te faudra aussi tester la valeur du GET exemple if((!$_GET['id_user']) || ($_GET['id_user'] != 1)) { echo "il n'y a pas de get id_user et même si il y en a un il n'est pas égale à 1"; } Pour concaténer des conditions tu utilises : "||" pour "ou" "&&" pour "et"
  2. Instructif, j'ai lu bon nombre d'argument valables sur le contre "forcer" l'ouverture d'une nouvelle fenêtre. Pour ma part, je ne reste pas convaincu pour autant, mais effectivement suivant le cas ça peut être vrai; Reste le cas signalé pas Dudu (je crois que c'est lui qui a dit ça) où on en a un article qui propose plusieurs liens sur le même sujet, mon utilisateur souhaite probablement pouvoir consulter l'article sur ce lien tout en conservant la page où il se trouve ouverte. Si je propose plusieurs liens, des liens partenaires, ou des liens d'informations ... l'utilisateur peut aussi avoir envi de garder ma fenêtre ouverte afin de pouvoir voir les autres liens après visite du premier. Vous allez me dire il peut ouvrir dans une nouvelle fenetre mais tout le monde ne le sait pas, tout comme ce servir de l'historisue. Ma conclusion, à ce stade, est de se poser la question "est-ce que l'utilisateur aura toujours besoin de ma page une fois qu'il aura suivi ce lien ?" C'est vrai que l'utilisateur n'est pas moi, ce n'est pas parce que moi je maitrise mes X fenêtres d'ouvertes et que je n'y vois pas d'inconvéniant que c'est le cas de tout le monde, ce n'est apperment pas le cas de tout le monde et d'après ce que j'ai lu c'est de plus en plus mal vu le multi-fenêtre, j'utilise des fenêtres depuis .... ben qu'elles existent sur PC je trouve ça en fait hyper pratique mais bon, ça c'est certainement du à l'habitude et ne peut pas être généralisé. Tout ça pour dire que je n'ai plus vraiment d'avis bornés sur le sujet .... à suivre.
  3. Quels autres champs ? Tu as body qui est le contenu du mail, name qui est le nom de l'expediteur (qui si j'ai compris va s'afficher comme expediteur), email qui est l'email de l'expediteur et un sujet. Si tu reçois un mail avec un sujet, un nom d'expediteur, une mail d'expediteur et un message, tout est bon
  4. Salut, je me suis inspiré d'un css trouvé sur le hub, enfin il me semble il fonctionne tant que je n'utilise que des paragraphes ou des titres, seulement va faloir que j'insèrer un tableau (sauf si on me propose mieux ..) et dès que je met mon tableau ça plante sous IE, mon tableau se retrouve bien dans la bonne colonne du site mais commence sous la derniere ligne du menu. Sous FireFox c'est ok. désolé je ne peux pas vous montrer le lien (faut que je me trouve un hébergement gratuit d'ailleur pour les tests) style.css /* CSS Document */ * {padding: 0; margin:0} html,body { height:100%;} body { background-color:#e1e1e1; } #corps{ height:auto; min-height:100%; height:100%; width:740px; margin-left:auto; margin-right:auto; background:#eaeaea; } input, select { font-size: 11px; font-family: verdana, helvetica, sans-serif; vertical-align: middle; text-align:center; font-weight:bold; color:#a5c551 } #header { width: 740px; height: 87px; background-color:#FFFFFF; } #header p{ position:relative; font-size:36px; top:40px; right:20px; text-align:right; color:#99FF66; } #menu { float: left; width: 150px; padding-top:4px; background-color: #e7e9df; /*height:80%;*/ min-height:80%; } .element_menu { border: 1px solid #CCCCCC; margin-bottom: 10px; margin-left:2px; -moz-border-radius: 10px; background:#a5c51b; } .element_menu h3 { color: #fff; background:#a5c51b; font-family: Verdana, Tahoma, serif; font-size: 12px; margin-top: 5px; margin-left: 0px; text-align:center; padding:3px; text-decoration: none; } .element_menu ul { list-style-type: disc; padding: 0px; padding-left: 20px; margin: 0px; margin-bottom: 10px; background-color: #e7e9df; } .element_menu a { color: #669966; text-decoration:none; font-family: Verdana, Tahoma, serif; font-size:10px; } .content { text-align:center; padding-top:7px; background-color: #e7e9df; margin-bottom: 10px; } #droite { margin-left: 152px; margin-right:2px; color: #a5c51b; font-family: Verdana, Tahoma, serif; font-size:10px; font-weight: bold; background:#a5c51b; margin-top:4px; border: 1px solid #CCCCCC; -moz-border-radius: 10px; text-align: justify; } #droite h2 { font-size: 14px; color: #fff; background:#a5c51b; font-family: Verdana, Tahoma, serif; margin-top: 5px; margin-left: 0px; text-align:center; padding:3px; padding-bottom:30px; text-decoration: none; } #droite ul { list-style-type: disc; line-height:16px; padding: 0px; padding-left: 20px; margin: 0px; margin-bottom: 10px; background-color: #e7e9df; } #droite h3 { color: #AAAAAA; text-align: left; font-family: Verdana, Tahoma, serif; text-decoration: underline; font-size: 10px; } #droite a { color: #a5c51b; font-family: Verdana, Tahoma, serif; font-size:10px; } #droite a img { border: 1px solid black; } #footer { clear:both; text-align: center; color:#a5c51b; font-size:9px; } index.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Document sans titre</title> <link href="style1.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="corps"> <div id="header"><p>Titre</p></div> <div id="menu"> <div class="element_menu"> <h3>Menu 1</h3> <ul> <li><a href="#">Accueil</a></li> <li><a href="index1.php?page=accueil1">accueil1</a></li> <li><a href="#">lien</a></li> <li><a href="#">lien</a></li> <li><a href="#">lien</a></li> <li><a href="#">lien</a></li> </ul> </div> <div class="element_menu"> <h3>Menu 2</h3> <div class="content"> <input type="text" size="8" /><input type="password" size="8" /><input type="submit" value="Connexion" /><br /> <a href="#">Inscription</a></div> </div> </div> <div id="droite"> <?php if($_GET['page'] == 'accueil1') { include 'accueil1.php'; } else { include 'accueil.php'; } ?> </div> <div id="footer">Bla bla bla</div> </div> </body> </html> page avec tableau accueil1.php <h2>Gnia gnia gnia</h2> <div class="content"> <table width="100%"> <tr> <td width="33%">Contenu cellule</td><td width="33%">Contenu cellule</td><td width="33%">Contenu cellule</td> </tr> <tr> <td width="33%">Contenu cellule</td><td width="33%">Contenu cellule</td><td width="33%">Contenu cellule</td> </tr> <tr> <td width="33%">Contenu cellule</td><td width="33%">Contenu cellule</td><td width="33%">Contenu cellule</td> </tr> </table> </div> Hors-sujet : sympa la codebox
  5. Salut echo preg_replace("/RESPONSE/", $response, join("",file("contact-response.html"))); met cette ligne en commentaire
  6. J'ai trouvé un tuto et j'ai tout corrigé lol manquait pas grand chose mais c'était important, comme souvent vous me direz .... Ce code me permet d'afficher une page générée dynamiquement puis l'envoyer par email, le contenu de la page est mis dans la variable $content. $content = "<p>Ma page</p>"; $content = $content."<p>Contenu</p>"; $adresse = "adresse1;adresse2; ....."; $from ="adressewebmaster"; $subject = "Sujet du message"; $headers = "From: \t$from\n"; $headers .= "Reply-To: $from\n"; $headers .= "Content-Type: text/html; charset=\"iso-8859-2\""; mail($adresse, $subject, "<html><head></head><body>".$content."</body></html>", $headers);
  7. Salut Bon, je ne suis pas adepte des headers pour les mails. $TO = "papa_AT_wanadou.fr"; $h = "From: " . $TO; $TO = $TO.";moitest_AT_wanadoo.fr"; $subject = "Nouvelle commande"; $h .= "Content-Type: \"text/html\"; charset=\"iso-8859-2\""; mail($TO, $subject, "<head><html><body>".$content."</body></html></head>", $h); Donc, si j'envois cet email sur hotmail au lieu de Wanadoo et que je le visualise via le site de MSN j'ai ma jolie page avec logo, tableau, lien ... Mais si je la reçois via Outlook express ben j'ai mon joli code et c'est tout de suite moins bien. Pire encore : l'en tête est pas joli joli et j'ai un joli [sPAM] devant "Nouvelle commande" J'avou que c'est un bout de code que j'ai piqué sur un script et tenté d'adapter mais c'est un peu raté, si on pouvait m'aider, j'ai éssayer iso-8859-1 c'est pareil et mon from me donne un truc du genre : papa_AT_wanadoo.frContent-Type: text/html_AT_60gp.ovh.net;,
  8. un truc que j'utilise pour un projet en cours body { padding:0; margin:0; background: #FFF; color: #000000; } #header { width: 760px; height: 87px; background-image: url("bann.jpg"); background-repeat: no-repeat; margin-bottom: 15px; background-color:#FFFFFF; position:absolute; top:0; left:150px; border-top:0px none #000; border-bottom:1px solid #DDDDDD; overflow:hidden; color: #000000; } et en fait je n'ai pas containeur ça marche sous IE et Autres
  9. A tout hazard, chez online tu n'as pas un filemanager dans ton pannel d'administration où tu pourrais faire cette modif ? C'est étrange ce message, si c'était un problème de droits il me semble que ce serait un autre message ... Peux tu le supprimer ? lol je sais mais si tu arrives à modifier les attributs des autres fichiers ...., si tu peux le supprimer, ne te gène pas et reupload le et retente la même manip ....
  10. Ne serais pas préférable de laisser le body à 100% qui part défaut est blanc puis de créer un conteneur ? <body> <div id="conteneur"> Le site </div> </body> Voir sujets : http://www.webmaster-hub.com/index.php?showtopic=13244 et http://www.webmaster-hub.com/index.php?showtopic=13246
  11. Le problème est bien le risque que l'utilisateur se serve de cette possibilité pour éxécuter un fichier ? Je n'ai pas tester, mais si on fait un <img src =" pouet.gif"> et qu'en fait pouet.gif soit à la base un "pouet.php" je ne crois pas qu'il s'executera. Si on rajoute comme sécurité un truc de base qui consiste à metre toutes ses pages dans un tableau et de renvoyer vers un joli message si la page ne figure pas dans ce tableau, aucun script ne pourra être utilisé. Si je me trompe dites le moi, car perso je me contente de ça donc si ce n'est pas bon, serait temps que je corrige
  12. [Hors-sujet] Heu oui et non, personnellement il m'arrive de suivre des liens puis fouiller un peu à droite à gauche voir suivre encore un autre lien ........ si le site où se trouvait le premier lien ne m'a pas dirigé sur une nouvelle fenetre il y a très peu de chance pour que je fasse l'effort de revenir en arriere jusqu'a ce que je tombe dessus ou que je fouille dans l'historique. Par contre ma page d'accueil est google donc je peux effectivement relancer la même recherche si le contenu du site m'intéressait plus que les autres. Je fais parti de ceux qui n'ont rien dans les favoris, même mes sites ne sont pas dans les favoris, pas même webmaster-hub uniquement les pages introuvables via google, administration, phpmyadamin ... Donc je préfere renvoyer mes visiteurs sur une nouvelle fenetre, à chacun sa politique [/Hors-sujet]
  13. Salut, J'ai l'impression que je vais proposer quelques chose de bêtes mais bon .. je me lance Pourquoi ne pas tester uniquement l'extention du fichier ? une premiere fois en javascript, si l'utilisateur l'accepte ça évite de soliciter le serveur, une seconde fois au cas où en php. Tu peux aussi renommer le fichier de façon a ce que si l'utilisateur envoi un fichier php ou autre il n'en connaise pas le nom sur ton serveur, dans tout les cas le renommer te sera certainement nécéssaire pour éviter les doublons av_user_20052005.ext par exemple.
  14. Bon ça me parait un peu "non conventionel" mais ça marche, au lieu de détailler ce que j'ai fait avec des phrases je vous pose mon code, désolé ça fait un peu long mais si vous avez des remarques, suggestions, coreections ... ça permetra de l'améliorer ainsi il pourra servir de base à ceux qui se lance dans cette aventure <?php session_set_cookie_params(0, '/', '.domaine.com', false); session_start(); $agent = $HTTP_SERVER_VARS['HTTP_USER_AGENT']; $adresseip = $HTTP_SERVER_VARS['REMOTE_ADDR']; $page = $HTTP_SERVER_VARS['SERVER_NAME'].$HTTP_SERVER_VARS['REQUEST_URI']; $id_session = $_COOKIE['PHPSESSID']; require_once 'config.php'; // connexion base de données $sel_sess = "select * from table_session"; if(!$id_session) { $chaine = str_shuffle("abcdefghijklmnopqrstuvwxyz0123456789"); $_SESSION['id_tmp'] = substr($chaine,0,14); $id_session = $_SESSION['id_tmp']; if((isset($HTTP_COOKIE_VARS['C_id'])) && ($HTTP_COOKIE_VARS['C_id'] > 0)) { $C_login = $HTTP_COOKIE_VARS['C_login']; $C_pass = $HTTP_COOKIE_VARS['C_pass']; $C_id = $HTTP_COOKIE_VARS['C_id']; $verif = mysql_query("select id_user,login, mdp from table_user where login = '".$C_login."' and mdp = '".$C_pass."'") or die(mysql_error()); if(mysql_num_rows($verif)) { $row_verif = mysql_fetch_assoc($verif); $_SESSION['S_user'] = $row_verif['id_user']; $insert_session = mysql_query("insert into table_session ( id_user, id_session, ip_user, agent_user, s_lastactivity, s_lastvisit, page ) values ( ".$row_verif['id_user'].", '".$id_session."', '".$adresseip."', '".$agent."', ".time().", ".time().", '".$page."' )"); include 'F_user.php'; // récup des infos sur l'utilisateur } } else { $insert_session = "insert into table_session ( id_user, id_session, ip_user, agent_user, s_lastactivity, s_lastvisit, page ) values ( 0, '".$id_session."', '".$adresseip."', '".$agent."', ".time().", ".time().", '".$page."' )"; $run = mysql_query($insert_session) or die (mysql_query()); } } if((!isset($_SESSION['id_tmp'])) || ($_SESSION['id_tmp'] <> $id_session)) { if($_SESSION['S_user']) { $update_session = mysql_query("update table_session set id_user = ".$_SESSION['S_user'].", id_session = '".$id_session."', agent_user = '".$agent."', s_lastactivity = ".time().", page = '".$page."' where id_session = '".$id_session."'") or die (mysql_error()); include 'F_user.php'; } else { if(($_SESSION['id_tmp']) && (!$_COOKIE['PHPSESSID'])) { $update_session = mysql_query("update table_session set id_user = 0, id_session = '".$id_session."', agent_user = '".$agent."', s_lastactivity = ".time().", page = '".$page."' where id_session = '".$_SESSION['id_tmp']."'") or die (mysql_error()); } else { $update_session = mysql_query("update table_session set id_user = 0, id_session = '".$id_session."', agent_user = '".$agent."', s_lastactivity = ".time().", page = '".$page."' where id_session = '".$id_session."'") or die (mysql_error()); } } } include 'robots.php'; // gestion des robots ?> la connexion : if (isset($_POST['login'])) { $loginUsername=$_POST['login']; $password=$_POST['password']; $sql_query = "SELECT login, mdp, id_user FROM table_user WHERE login='".$loginUsername."' AND mdp='".$password."'"; $run_sql = mysql_query($sql_query,$Connect) or die(mysql_error()); $loginFoundUser = mysql_num_rows($run_sql); if ($loginFoundUser) { $user = mysql_fetch_assoc($run_sql); $id = $user['id_user']; $login = $user['login']; $pass = $user['motpass']; if($_POST['saveme'] == 'on') { setcookie("C_id", $id, time()+3600*12*52*100,"/", ".domaine.com"); setcookie("C_login", $login, time()+3600*12*52*100,"/", ".domaine.com"); setcookie("C_pass", $pass, time()+3600*12*52*100,"/", ".domaine.com"); } session_register(auth); $_SESSION['S_user'] = $id; if($_COOKIE['PHPSESSID']) { $id_session = $_COOKIE['PHPSESSID']; } else { $id_session = $_COOKIE['C_id_tmp']; } $sel_sess_user = "select * from tabler_session where id_session = '".$id_session."'"; $req_sess_user = mysql_query($sel_sess_user)or die(mysql_error()); $update_sess = mysql_query("update table_session set id_user = ".$id.", s_lastactivity = ".time().", id_session = '".$id_session."', ip_user = '".$HTTP_SERVER_VARS['REMOTE_ADDR']."', agent_user = '".$HTTP_SERVER_VARS['HTTP_USER_AGENT']."' where id_session = '".$id_session."'") or die(mysql_error()); $update_user = mysql_query("update table_user set last_activity = '".time()."' where id_user = ".$id.""); ?><script>location='redir.php';</script><?php } }
  15. Si ça intéresse quelqu'un : YES J'y suis arrivé, j'ai ce que je veux, quelques p'tits détails à perfectionner mais ça marche
  16. Mouai, y a rien qui va, c'est de pire en pire de plus en plus de code, de plus en plus de condition pour un résultat toujours insatisfesant. Je vais tout recommencer à zéro en commenssant par Que lorsque que l'on arrive sur le site puis que je cha,ge de page je ne crééb pas un second visiteur dans ma base de données.
  17. Merci de ton aide, j'avance dans ette fichu idntification mais tout n'est pas parfait. Si je comprend bien, le visiteur arrive, une session est créé mais non utilisable tant qu'on n'a pas ouvert une nouvelle page, donc je test si cette personne a une id de session(si il vient de se connecter la session est null), si il n'en a pas, je lui en créé une temporaire (une chaine unique) me permetant de l'inscrire dans ma table de session (utilisateurs en ligne, visiteurs, membres, robots) et à la prochaine ouverture de page, je fais un update qui remplace la chaine temporaire par la valeur de sa session. Au niveau de la connexion du membre, c'est bon du moment qu'il a une id de session, chose qu'il n'avais pas forcément, mais avec cette idée je pense pouvoir gérer le problème, meme si ça fait encore des lignes de codes en plus, je trouve que ça fait au final un fichier bien compliqué de gérer ses visiteurs et membres ... mais bon. En tout cas merci, je ne sais pas si ce que j'ai compris était bien ce que tu essayais de me dire mais ça me donne une idée
  18. Salut, Je ne pense pas que cela soit bien grave, à mon avis le script éssai juste de remetre les nouvelles permissions au fichier config.php et que la config du serveur ne le permet pas. Est ce que ça t'empeche de finir l'instalation du script ? est ce que ton script de news ne fonctionne pas ? si oui, voir pour virer la ligne dans l'install qui modifi le chmod et la condition qui fait que tu ne peux pas terminer, si non, une fois le script installé remetre 550 en attribut de config.php manuellement par ftp.
  19. Salut Avec FireFox tu as un débugeur javascript. ça donne ça Erreur : this.submit is not a function Erreur : preloadIMG is not defined Erreur : stopScroll is not defined
  20. Salut, Comment faire un forum en html ? impossible ! ce sera du PHP, il existe différents scripts avec de nombreuses fonctions pour créer un forum. C'est la solution la plus simple, la plus rapide et la plus sure. Simple Machine Forum PhpBB IBF Pour ce dernier voir les conditions d'utilisation, je ne sais pas si il est toujours gratuit.
  21. Salut, bon je ne suis pas nouveau ici, voir date d'inscription mais j'étais faché avec le net et l'informatique ..... mais bon quant une passion nous tient on lui pardonne tout. J'ai appris les bases de la programation avec le VB, d'abord pour moi puis pour les sociétés où j'ai travaillé, puis est né mon premier forum que j'ai installé sur un compte free pour tenter d'aider un ami qui avait des dificultés avec, et à partir de là j'ai commencé à metre les mains dans le html et le php, le sql je connaissai déja, de manière un peu différente mais du SQL ça reste du SQL. EDIT : lien de ce qu'est devenu mon premier forum, c'est mon ex qui le gère maintenant, je n'intervient que quant elle à fait une boulette Forum Agora J'ai installé des scripts, les ai arrangé à ma sauce, amélioré ou simplifié ..... il me reste encore pas mal de petites lacunes à combler et très prochainement je compte bien m'intéresser à tenter d'utiliser les classes. Je suis entrain de faire un site pour un ami qui viens d'ouvrir sa boutique, je n'aime pas trop le design, je n'ai pas réussi à me faire plaisir vu les couleurs qu'il m'a imposé mais lui ça lui plait c'est déja bien. j'ai encore des petites arengements à faire et il y a toute la partie non visible et pourtant laplus intéressante à mon sens qui est réservé à ses clients professionnels, je vais voir avec lui pour créer un compte test afin que vous puissiez admirez lol bon ok plutot critiquer mon travail. je vous donne le lien pour (si ça vous intéresse bien sur) que vous appercevez déja toute la partie publique du site. AC Jet d'encre Si vous avez des remarques suggestions ... n'hésitez pas, mais ne soyez pas trop méchant ) Yann
  22. Je vais peut être dire une connerie mais si les gains sont inférieur ou égale aux frais d'hébergement et nom de domaine, n'est il pas possible de créer une association sans ce cas ? une association est a but non lucratif mais peu percevoir des dons tant que ceux ci sont inférieur à ses frais, je ne pense pas qu'il soit interdit à une association de se financer à l'aide de la publicité.
  23. YannCo

    télechargement

    Salut J'avais un truc du genre en fesant comme ceci une table file avec un file_id file hit un lien de type <a href="upload.php?id=".$id.""><?php echo $file; ?></a> le fichier upload.php $run=mysql_query("UPDATE file SET hits=hits+1 WHERE file_id=".$_GET['id'].""); $res=mysql_query("SELECT file FROM file WHERE file_id=".$_GET['id'].""); $tab=mysql_fetch_assoc($res); $loc="../chemin/".$tab['file'].""; @header( "Content-Disposition: inline; filename=\"".$tab['file']."\"\nContent-Length: ".(string)(filesize( $loc ) ) ); $fh = fopen( $loc, 'rb' ); fpassthru( $fh ); @fclose( $fh ); exit(); avec une redirection ça devrait le faire ! le seul hic c'est que je ne suis pas ertain que ce script soit bien celui que j'utilisai, si ça ne va pas je peux aprofondir ma recherche à moins que quelqu'un corrige à l'avance
  24. Là, j'ai du mal à te suivre j'ai bien compris que l'id de session était donné à l'arrivé sur le site et qu'elle sert donc au chargement de la deuxieme page, je l'avais plus ou moins déduis mais là, merci, c'est de l'affirmatif, cependant je ne sais pas et ne vois pas comment gérer ta solution.
  25. Ok, merci bon ... ben je m'y intéresserai un peu plus tard, c'était surtout par curiosité
×
×
  • Créer...