Aller au contenu

aodot

Hubmaster
  • Compteur de contenus

    280
  • Inscrit(e) le

  • Dernière visite

Tout ce qui a été posté par aodot

  1. Bonjour, Merci pour votre réponse mais je ne pense m'être bien expliqué. En fait mes sites sont dans une table REF (titre, lien etc.) et mes visites sont dans une TABLE visites (jour, mois, annee,id_ref). En fait je désire trier les sites qui sont dans REF par les nombres de visites du mois en cours qui sont dans VISITES. Donc en gros on sélectionne dans REF tous les sites où encours=Terminé et je veux trier le résultat de cette requête par le nombre de visites du mois de chaques sites. Exemple : Mes requêtes me donne : 1. site 1 200 visites 2. site3 4000 visitess 3.site5 300 visites alors que je voudrais : 1. site3 4000 visites 2. site5 300 visites 3. site1 200 visites Ca parait simple mais qu'est ce que c'est complqiuer de s'expliquer Je continue mes recherches et je vous tiens au courant. Encore merci.
  2. Re bonjour, J'ai de nouveau cherché et j'ai testé cela : $select1 = "SELECT id,count(*) AS nb_id FROM visite WHERE mois='$mois' AND annee='$annee' GROUP BY id ORDER BY nb_id DESC "; mais le tri ne se fait pas et les nombre sont incorectes. Je continue mes recherches.
  3. Bonjour, Merci pour votre réponse. Désolé de ne pas y avoir répondu plus rapidement mais la famille prend beaucoup de temps ;-) Changer le ORDER BY ? Je ne comprends pas trop. Si je fais order By id cela ne tri pas. en fait il faudrait trier par nombre total de visite par count(id) en fait. Mais comment lui indiquer.... Auriez vous une piste ? Merci par avance.
  4. Bonjour, Décidement je suis beaucoup sur le groupe en ce moment... J'ai un petit soucis de tri après un while. Cela paraît simple mais c'est plus compliqué que ça n'y parait. Je vais essayer de voux expliquer. J'ai déjà créé quelques sites Internet. J'aimerais me créer une page qui récupére les visites du mois de chaque site et les classer. Donc j'arrive bien à lister les visites de chaques sites mais le problèmes c'est de les trier. Voici ma requête qui affiche les sites order alphabétique : <?php $select = "SELECT count(id) FROM ref WHERE encours='Terminé' "; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; $select = "select * FROM ref WHERE encours='Terminé' ORDER BY titre "; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); if($total) { $i='1'; while ($donnees = mysql_fetch_array($result) ) { echo "$i. "; $mois = date ("m"); $annee = date ("Y"); $host = "XXXXXX";$user = "XXXXXXX";$pass = "XXXXXXX";$db = "$donnees[bdd]";mysql_connect($host,$user,$pass);mysql_select_db($db); $select1 = "SELECT count(id) FROM visite WHERE mois='$mois' AND annee='$annee' "; $result1 = mysql_query($select1) or die ('Erreur : '.mysql_error() ); $row1 = mysql_fetch_row($result1); $total1 = $row1[0]; ?> <a href="<?PHP echo "$donnees[lien]" ?>" class="lien_blanc" target="_blank"><?PHP echo "$donnees[titre]" ?></a><?PHP echo " ($total1)" ?><? $i=$i+1; } } else echo 'Pas de site pour le moment.'; mysql_free_result($result); ?> Avez vous une petite piste ? Car pour les problèmes les plus compliqués google n'est pas mon ami lol. Où je tape peut etre les mauvais mots. Merci par avance.
  5. lol que ce soit dans le forum php ou ajax vous êtes toujours le premier a répondre. EN tout cas merci pour votre rapidité. Maintenant cela fonctionne car j'ai rajouté la connexion à la bdd. Cependant des alert apparraissent après le choix de la première liste j'ai donc mit la ligne alert(xhr.readyState); en commentaire et cela fonctionne apparement. Un grand merci en tout cas. A bientôt.
  6. Bonjour, Pas mal de recherches depuis google mais de réponses mis à part un tutorial de devellopez.net qui revient toujours. Je l'ai adapté à mon cas très rapidement mais la seconde liste n'affiche rien. En gros première zone et deuxième liste ville. Voici le code de auteurs.php <html> <?PHP include('../include/connectdb.php'); ?> <head> <title>My webpage is rich</title> <script type='text/javascript'> function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ // Firefox et autres xhr = new XMLHttpRequest(); } else if(window.ActiveXObject){ // Internet Explorer try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); } } else { // XMLHttpRequest non supporté par le navigateur alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); xhr = false; } return xhr; } /** * Méthode qui sera appelée sur le click du bouton */ function change(){ var xhr = getXhr(); // On défini ce qu'on va faire quand on aura la réponse xhr.onreadystatechange = function(){ alert(xhr.readyState); // On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readyState == 4 && xhr.status == 200){ di = document.getElementById('livre'); di.innerHTML = xhr.responseText; } } // Ici on va voir comment faire du post xhr.open("POST","ajaxLivre.php",true); // ne pas oublier ça pour le post xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // ne pas oublier de poster les arguments // ici, l'id de l'auteur idauteur = document.getElementById('auteur').options[document.getElementById('auteur').selectedIndex].value; //alert(idauteur); xhr.send("idAuteur="+idauteur); } </script> </head> <body> <form> <fieldset style="width: 500px"> <legend>Liste liées</legend> <label>Auteurs</label> <select name='auteur' id='auteur' onchange='change()'> <option value='-1'>Aucun</option> <?php $res = mysql_query("SELECT * FROM immo_zone ORDER BY zone"); while($row = mysql_fetch_assoc($res)){ echo "<option value='".$row["id"]."'>".$row["zone"]."</option>"; } ?> </select> <label>Livres</label> <div id='livre' style='display:inline'> <select name='livre'> <option value='-1'>Choisir une zone</option> </select> </div> </fieldset> </form> </body> </html> et celui de ajaxLivre.php <?php echo "<select name='livre'>"; if(isset($_REQUEST["idAuteur"])){ $res = mysql_query("SELECT * FROM immo_ville WHERE zone=".$_REQUEST["idAuteur"]." ORDER BY ville"); while($row = mysql_fetch_assoc($res)){ echo "<option value='".$row["id"]."'>".$row["ville"]."</option>"; } } else echo "<option value='-1'>Choisir une ville</option>"; echo "</select>"; ?> Il y a t'il un soucis quelques parts ? Merci par avance
  7. Merci pour vos répones et le temps consacré à mon problème. Je viens de trouver un tutorial mais impossible de faire apparaitre quoi que ce soit dans la secponde liste donc direction le forum AJAX/JAVASCRIPT... Lol
  8. Bonjour, Merci pour votre réponse. J'avais penser à recharger la page mais cela ne me convient pas trop et je veux limiter l'utilisation du javascript pour de problème d'accessiblité comme vous l'indiquez. Je vais donc me pencher sur AJAX malgré le fait que je n'y connais strictement rien ;-). Encore merci. A bientôt.
  9. J'apporte une autre explication, pour permettre de m'aider plus facilement. Voici le code que j'ai créé : <? //premiere liste echo '<select size=1 name="type" id="type" class="lista">'."\n"; $sql = "SELECT * FROM type ORDER BY type ASC"; $ReqLog = mysql_query($sql); while ($resultat = mysql_fetch_assoc($ReqLog)) { echo '<option value="'.$resultat[id].'">'.$resultat[type]; echo '</option>'."\n"; } echo '</select>'."\n"; //la deuxieme liste qui recupere le parametre $type de la premiere liste. c'est la que pose le problème. echo '<select size=1 name="ref" id="ref" class="lista">'."\n"; $sql = "SELECT * FROM ref WHERE type='$type' ORDER BY ref ASC"; $ReqLog = mysql_query($sql); while ($resultat = mysql_fetch_assoc($ReqLog)) { echo '<option value="'.$resultat[id].'">'.$resultat[ref]; echo '</option>'."\n"; } echo '</select>'."\n"; ?>
  10. Bonjour, Un petit problème et apparement personne n'a ce problème car j'ai bien cherché sur google mais pas de réponses. Dans ma bdd j'ai une talbe TYPE et une table REF. J'aimerais afficher sur mon site une liste rempli par TYPE et selon le choix j'aimerais que la deuxième liste affiche les références du type de matériel sélectionné dans la première liste. Je ne sais pas si j'ai étais assez clair. Un vrai casse tête ! Merci par avance en tout cas si vous avez une piste.
  11. Bonsoir, Merci également à vous pour votre réponse. Oui c'est l'intégralité du code mis à part l'affichage des résultats de la boucle while que j'ai simplifié pour une meilleure compréhension. En fait, pour moi, la requète select town tri les villes par nom comme je le désire. et la seconde requète tri les offres par rapport aux villes triées. Avec cette première requète le classement des villes est ok mais je dois utiliser ce classement pour trier les offres par nom de ville. En gros si je rajoute une boucle while après la première requète, la variable $donnees_town[ville] permet de trier les villes par nom. Ca fait pas mal de jour que j'ai la tete dans ce code donc je n'ai peut etre pas assez de recul pour trouver la solution mais après maintes recherches sur les forums, toujours pas de solution. Grace a votre expérience aurez vous vu un truc qui pouvait expliquer ce problème ? Merci encore, en espérant que vous pourriez m'aider. Bonne soirée.
  12. Bonsoir, Merci de votre réponse. Oui c'est vrai que c'est pas très clair. En fait, quand je dis que ça ne marche pas c'est que le tri n'est pas fait et il n'y a pas d'erreur. Mon but est de trier les offres par nom de ville. C'est nom de ville sont associées à un id dans la table ville. et c'est cet idée qui est utilisé dans la table offre pour indiquer la ville de l'offre en question. Une requete de tri par ville simple tri les offres par l'id de la ville alors que je dois trier par nom de ville. Je ne sais pas si je suis assez clair lol mais pour moi la logique est claire mais le mettre en pratique est plus compliqué.
  13. Un gros problème sur lequel je m'arrache les cheveux depuis plusieurs jours. Je voux explique, je crée un site pour ami qui vend des maisons. Les maisons sont gérés par l'intermédiaire d'une base de donnée MYSQL. J'ai une table VILLE : un champ id et un champ ville et une table OFFRE : un champ id, un champ id_ville etc. Le champ id_ville de la table OFFRE est le même que le champ id de la table VILLE. Je récupère le nom de la ville par rapport au champ id_ville. Cependant je dois réaliser un tri par ville de la liste des maisons et la ça commence à être compliqué. Voila en gros le code que j'ai tapé et ça marche pas. <?PHP $select_town = mysql_query("SELECT offre.ville, ville.ville, ville.id FROM offre LEFT JOIN ville ON offre.ville = ville.id ORDER BY ville.ville")or die(mysql_error()); $select = "SELECT * FROM offre WHERE categorie='$categorie' AND type='$type' ORDER BY '$donnees_town[ville]' ASC limit $limite,$nombre"; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); while ($donnees = mysql_fetch_array($result) ) { $sql2 = "SELECT * FROM immo_ville WHERE id='$donnees[ville]'"; $sql2 = mysql_query($sql2) or die (mysql_error()); $result2=mysql_fetch_array($sql2); echo "$result2[ville]<br>"; echo "$donnees[localisation]<br>" echo "$donnees[description]"; } ?> IL y a certainement un problème dans la requ$ete mais je ne trouve rien. Voyez vous querlque chose de louche ? Merci par avance.
  14. Bonjour, Je comprends un peu mieux mais je vais essayer d'approfondir un peu en cherchant un tutorial. Merci encore.
  15. Alors la merci pour votre réponse. J'ai réussi à obtenir ce que je voulais en ajoutant un group by et un order by : $select = mysql_query("SELECT telephones.marques, marques.marques, marques.id FROM telephones LEFT JOIN marques ON telephones.marques = marques.id WHERE telephones.type != 'accessoires' GROUP BY telephones.marques ORDER BY marques.marques")or die(mysql_error()); Malheureusement je n'ai pas tout compris dans cette requête. Serait-il possible de m'indiquer la méthode de réflexion pour comprendre cette requete ? J'en demande peut être trop mais vous inquiétez pas je vais chercher. Encore merci et à bientôt.
  16. Rebonjour, J'ai cherché et peut être trouvé quelque chose : les requetes imbriquées. Voici mes tables (en gros) : TABLES marques : id | marques --------------- 1 | Nokia 2 | Ericsson 3 | Motorola TABLE telephones id | marques | ref --------------- ... 4 | 1 | N95 5 | 2 | T28 Je recherche à obtenir la liste triée des marques utilisées dans le table telephones. Le résultat devrait être le suivant : - Ericsson - Nokia J'ai fait cette requete : $select = "SELECT id,marques FROM marques WHERE marques IN(SELECT marques FROM telephones GROUP BY marques)"; $result = mysql_query($select); if($total) { while ($donnees = mysql_fetch_array($result) ) { echo "$donnees[id]"; ?> Mais rien ne s'affiche. Voyez vous quelque chose qui cloche ? Merci par avance.
  17. Merci pour votre réponse. $donnees[marques] retourner le numéro de la marque $donnees2[marques] retourne le nom de la marque grace à $donnees[marques] Durant mes cours de base de données, on m'avait expliqué qu'on pouvait faire en sorte que les collones d'une table soit inséré virtuellement dans une autre table. Est ce cela une jointure de table ? INNER JOIN ?? Merci par avance SI oui quelle est la fonction à utiliserr
  18. Bonjour, Je viens vous voir totalement desepéré après de multiples recherches sur google. J'ai un problème pour le tri du résultat d'un requête SQL. Je vais essayer d'être clair. J'ai inséré des produits dans une base de donnée sql. Les marques sont stockés dans une table différente des produits. Donc par exemple pour un produit de marque Microsoft (id n°1 dans la table 'marques'), le champ marque dans la table de ce produit est 1. Quand j'affiche la fiche du produit en question je regarde l'iD de la marque ($_GET) et je vais récupérer le nom de la marque dans la table marques. Malheureusement quand je liste toutes les marques qui apparaissent dans la la table produits (donc toutes les marques utilisées), je n'arrive pas à les trier. Voici mon code : <?php $erreur='Aucune marques référencées pour le moment.'; $select = "SELECT count(id) FROM telephones WHERE type !='accessoires'"; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; $select = "select * FROM telephones WHERE type != 'accessoires' GROUP BY marques"; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); if($total) { while ($donnees = mysql_fetch_array($result) ) { ?> <a href="index.php?page=marques&marque=<?PHP echo "$donnees[marques]" ?>" class="menu_gauche"> <?PHP $select2 = "select * FROM marques WHERE id='$donnees[marques]'"; $result2 = mysql_query($select2) or die ('Erreur : '.mysql_error() ); $donnees2 = mysql_fetch_array($result2); echo "$donnees2[marques]" ?></a> <?PHP } } else echo "<left>$erreur</left>"; mysql_free_result($result); ?> J'ai cherché mais sans succès ou je ne comprends pas. Auriez vous une piste s'il vous plait ? Toutes critiques sur mon code est la bienvenue. Merci par avance.
  19. Bonjour, J'ai un problème qui m'embête énormément et après plusieurs jours de recherche je n'ai toujours pas trouvé la solution. J'inséré des photos dans la base de donnée sql et lors de l'affichage la première ligne de 3 photos est en double. VOila le code que j'utilise i ldoit y avoir un problème mais je ne trouve rien du tout ! Si quelqu'un a une idée. merci. <?PHP //AFFICHAGE PHOTOS $select = "SELECT count(id) FROM photos"; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; if ($total) { $req = "SELECT * FROM photos ORDER BY id DESC"; //--- Résultat ---// $res = mysql_query($req); //met les données dans un tableau while($data = mysql_fetch_assoc($res)) { $tablo[]=$data; } //détermine le nombre de colonnes $nbcol=3; echo '<table align="center" width="100%" cellspacing="3">'; $nb=count($tablo); for($i=0;$i<$nb;$i++){ //les valeurs à afficher $valeur1=$tablo[$i]['titre']; $valeur2=$tablo[$i]['photos']; if($i%$nbcol==0) echo '<tr >'; echo '<td width="33%" align="center" > <table border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td width="11" height="9"><img src="images/bienvenue/bienvenue_haut_gauche.jpg" width="11" height="9"></td> <td height="9" style="background-image:url(images/bienvenue/bienvenue_haut.jpg);"></td> <td width="11" height="9"><img src="images/bienvenue/bienvenue_haut_droite.jpg" width="11" height="9"></td> </tr> <tr> <td width="11" style="background-image:url(images/bienvenue/bienvenue_gauche.jpg);"></td> <td > <table width="1" border="0" cellspacing="0" cellpadding="0" style="border:4px solid #ffffff;"> <tr> <td><div align="center"><a href="photos/big/'.$valeur2.'" rel="splash.image"><img src="photos/'.$valeur2.'" height="106" /></a></div></td> </tr> <tr style="background-image:url(images/hotel_bas.png);"> <td height="20" valign="bottom"><div align="center">'.$valeur1.'</div></td> </tr> </table> </td> <td width="11" style="background-position:right;background-image:url(images/bienvenue/bienvenue_droite.jpg);"></td> </tr> <tr> <td width="11"><img src="images/bienvenue/bienvenue_bas_gauche.jpg" width="11" height="9"></td> <td style="background-image:url(images/bienvenue/bienvenue_bas.jpg);"></td> <td width="11"><img src="images/bienvenue/bienvenue_bas_droite.jpg" width="11" height="9"></td> </tr> </table> '; echo '</td>'; if($i%$nbcol==($nbcol-1)) echo '</tr>'; } echo '</table>'; } else { echo "<center>Pas de photos dans la galerie photos.</center>"; } ?>
  20. Bonjour, Merci à vous deux, le problème a été réglé j'ia donc édité le php.ini. A bientot.
  21. Bonjour, Merci pour votre réponse clair et rapide et... vous aviez raison : upload_max_filesize 2M 2M Je comprend enfin ! Ouf ! Si quelqu'un aurait la solution ça me dépannerait bien mais je vais essayer de voir avec OVH pour changer ça. Merci encore.
  22. Bonjour, J'upload et je redimensionne des fichiers jpeg par l'intermediare d'un script php. Tout fonctionne mis à part quand j'upload des fichiers plus grand que 2 Mo (environ). Quand j'essaye d'uploader un fichier de 3 Mo (par exemple), le script ne passe pas la vérfication : is_uploaded_file <?PHP //FICHIER AJOUT_PHOTO.PHP $serie = $_POST['serie']; $file_tmp = $_FILES['imgfile']['tmp_name']; if(!is_uploaded_file($file_tmp)) { $query = "INSERT INTO photos (id,num_categorie,photos,date,heure) VALUES ('','$serie','',NOW(),NOW())"; mysql_query($query); } else { include('photos_resize.php'); $query = "INSERT INTO photos (id,num_categorie,photos,date,heure) VALUES ('','$serie','photos/$nom_image',NOW(),NOW())"; mysql_query($query); } ?> <?php //FICHIER PHOTOS_RESIZE.PHP include("photos_config.php"); //SI ENVOI IMAGE $file_type = $_FILES['imgfile']['type']; $file_name = $_FILES['imgfile']['name']; $file_size = $_FILES['imgfile']['size']; $file_tmp = $_FILES['imgfile']['tmp_name']; //VERIFICATION EXTENSION $ext = strrchr($file_name,'.'); $ext = strtolower($ext); if (($extlimit == "yes") && (!in_array($ext,$limitedext))) { echo "<p class='body_gras_rouge'>Cette extension n'est pas prise en compte.</p><br>"; exit(); } //OBTENIR EXTENSION $getExt = explode ('.', $file_name); $file_ext = $getExt[count($getExt)-1]; //CREER UN NOM AU HASARD $ThumbWidth = $img_thumb_width; $rand_name = md5(uniqid(rand(), true)); //GARDER LE TYPE DIMAGE if($file_size) { if($file_type == "image/pjpeg" || $file_type == "image/jpeg") { $new_img = imagecreatefromjpeg($file_tmp); chmod ($new_img, 777); } elseif($file_type == "image/x-png" || $file_type == "image/png") { $new_img = imagecreatefrompng($file_tmp); chmod ($new_img, 777); } elseif($file_type == "image/gif") { $new_img = imagecreatefromgif($file_tmp); chmod ($new_img, 777); } //GARDER LE MEME RATIO POUR LE REIDMENSIONNEMENT list($width, $height) = getimagesize($file_tmp); $imgratio=$width/$height; if ($imgratio>1) { $newwidth = $ThumbWidth; $newheight = $ThumbWidth/$imgratio; } else { $newheight = $ThumbWidth; $newwidth = $ThumbWidth*$imgratio; } //FONCTION QUI REDIMENSIONNE IMAGE if (function_exists(imagecreatetruecolor)) { //création de l'image vierge $resized_img = imagecreatetruecolor($newwidth,$newheight); } else { die("<p class='body_gras_rouge'>Erreur: Les libraires GD version 2 doivent êtres diposnibles sur le serveur. Contactez le Webmaster</p>"); } imagecopyresampled($resized_img, $new_img, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); //ENREGISTREMENT MESSAGE $nom_image = "galerie-$rand_name.$file_ext"; ImageJpeg ($resized_img,"$path_thumbs/$nom_image"); ImageDestroy ($resized_img); ImageDestroy ($new_img); } ?> <?php //FICHIER PHOTOS_CONFIG //path where to store images $path_thumbs = "../photos"; $path_big = "../photos/big"; //the new width of the resized image. $img_thumb_width = 640; // in pixel //Do you want to limit the extensions of files uploaded (yes/no) $extlimit = "yes"; //allowed Extensions $limitedext = array(".jpg",".jpeg"); //check if folders are Writable or not //please CHOMD them 777 if (!is_writeable($path_thumbs)){ die ("<p class='body_gras_rouge'>Erreur: Le répertoire <b>($path_thumbs)</b> n'existe pas. Contactez le Webmaster.</p>"); } if (!is_writeable($path_big)){ die ("<p class='body_gras_rouge'>Erreur: Le répertoire <b>($path_big)</b> n'existe pas. Contactez le Webmaster.</p>"); } ?> Pourtant je n'ai pas de restriction de taille etc... Je suis sur un serveur dédié OVH. Il y a til un problème dans le code ? Merci par avance.
  23. Re-bonjour, Ca y est le site est enfin en ligne. Comme vous me l'aviez dit i lfallait attendre la proagation des dns. Je suis rassuré. Un grand merci à Dan et Katmars pour leur coup de main. J'ai encore appris pas mal de chose. Dan tu auras certainement un nouveau client d'ici peu lol. A bientôt.
  24. Je vais essayer de vous expliquer avec plus de détails. J'héberge déjà 3/4 sites sur mon serveurs dédiés. J'avais un domaine en .fr en mutualisé chez 1 and 1. Vendredi je demande le transfert vers mon serveur dédié. Je rentre le auth code pour le transfert etc. Samedi matin je reçois un email comme quoi le transfert est réalisé. Je change donc les dns comme expliqué plus haut. Les changements de dns on été pris en compte par l'afnic ce matin. J'ai également crée le domaine dans ovhm. Le site est disponible à l'adresse du serveur : nsxxxxx.ovh.net/~xxx.fr mais toujours pas sur xxx.fr Ok, je vais attendre quelques temps alors. Mais en tout cas merci pour votre aide. J'hésite à prendre l'infogérance de Dan (juste une question de budget) mais je pense que je devrais y passer tot ou tard. Je vous tiens au courant
  25. Oui je suis chez OVH. J'ai réalisé ce que vous aviez indiqué mais ça ne fonctionne toujours pas.
×
×
  • Créer...