Aller au contenu

TYBMHI

Hubmaster
  • Compteur de contenus

    138
  • Inscrit(e) le

  • Dernière visite

Messages postés par TYBMHI

  1. for ($i = 1; $i <= $nombreDePages; $i++)
    {
    $page=isset($_GET['page']) ? $_GET['page'] : 1;
    if($i==$page)
    echo '[b]<span style="color:red;font-weight:bolder;"[/b]'. $i . '</span> ';
    else
    echo '<a style="color:orange;font-weight:bolder;" href="affichage.php?categorie='.$categorie.'&page=' . $i . '">'. $i .'</a> ';
    }

    Juste après au niveau de la balise

  2. Bonjour à tous,

    J'aimerais connaitre la requête sql a faire dans une fonction PHP (if...else), pour savoir si une donnée existe dans la base de donnée.

    je reçois d'un formulaire cette variable : $_POST['age']=$age;

    Si par exemple le visiteur tape 18 dans le formulaire je voudrais qu'une fonction ( if....) vérifie si il y a bien des gens enregistrés de 18 ans dans la table et affiche alors la page demandé. Et s'il n'y a pas d'age de 18 ans déjà rentré, il reste sur la même page.

    Merci d'avance.

  3. Bonjour à tout le monde,

    Sur mon site j'ai fait une pagination automatique (que j'ai récupéré sur le site du zéro) et j'aimerais que le numéro de la page en cours change de couleurs. J'ai essayé de placé une balise de type

    <span style="color:red;">

    mais rien n'y fait. Si quelqu'un peut m'aider... Merci d'avance.

    <?php
    // --------------- Etape 2 -----------------
    // On écrit les liens vers chacune des pages
    // -----------------------------------------

    // On met dans une variable le nombre de messages qu'on veut par page
    $nombreDeMessagesParPage = 7;
    // On récupère le nombre total de messages
    $retour = mysql_query("SELECT COUNT(*) AS nb_messages FROM tousdescons WHERE categorie='$categorie'");
    $donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
    // On calcule le nombre de pages à créer
    $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
    // Puis on fait une boucle pour écrire les liens vers chacune des pages
    ?>
    <p class="numeropage" style="margin-top:1cm;">
    <span style="color:orange;float:left;margin-left:1.1cm;">Catégorie :  </span> <span style="color:white;float:left;"><?php echo $_GET['categorie']; ?></span>
    <?php
    echo 'Page : ';
    for ($i = 1; $i <= $nombreDePages; $i++)
    {
    echo '<a style="color:orange;font-weight:bolder;" href="affichage.php?categorie='.$categorie.'&page=' . $i . '">'. $i .'</a> ';
    }
    ?>

    </p>
    <?php
    // --------------- Etape 3 ---------------
    // Maintenant, on va afficher les messages
    // ---------------------------------------

    if (isset($_GET['page']))
    {
    $page = $_GET['page'];
    // On récupère le numéro de la page indiqué dans l'adresse (affichage.php?page=4)
    }
    else // La variable n'existe pas, c'est la première fois qu'on charge la page
    {
    $page = 1; // On se met sur la page 1 (par défaut)
    }

    // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
    $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
    ?>

  4. Je te remercie beaucoup pour ton aide car je vois que tu te creuses la tête pour moi.

    Bon avec ce code je pense qu'on avance. Cependant lorsqu'il n'y a pas http dans le message ca envoie le message d'alerte : "votre message a bien été envoyé" mais il ne s'enregistre pas dans la bdd.

    En revanche quand il y a le mot http il n'y a pas d'enregistrement mais le message d'alerte n'apparait pas non plus.

  5. Ca ne marche toujours pas, le formulaire est envoyé et enregistré. Alors comme demandé je t'envoi mon code au complet :

    $message est la variable d'un textarea

    Code qui traite le formulaire :

    <?php
    if (isset($_POST['pseudo']) AND isset($_POST['datte']))
    {
    $datte = mysql_real_escape_string(htmlspecialchars($_POST['datte']));
    $categorie = mysql_real_escape_string(htmlspecialchars($_POST['categorie']))
    $souscategorie = mysql_real_escape_string(htmlspecialchars($_POST['souscategorie']));
    $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
    $pseudodumec = mysql_real_escape_string(htmlspecialchars($_POST['pseudodumec']));
    $smiley = mysql_real_escape_string(htmlspecialchars($_POST['smiley']));
    $message = nl2br(htmlentities(htmlspecialchars($_POST['message']))); // De même pour le message

    $string = $message;
    $badString = 'http://';// Le mauvais mot


    if((strpos($string, $badString) === FALSE)){
    echo "<script language='Javascript'>

    <!--

    alert('Votre message à bien été envoyé !');

    // -->

    </script>";
    }
    else{
    echo "<script language='Javascript'>

    <!--

    alert('Pas d'adresse web, merci !');

    // -->

    </script>";
    }
    // On peut enregistrer
    mysql_query("INSERT INTO table VALUES('', '" . $datte . "', '" . $smiley . "', '" . $pseudo . "', '" . $pseudodumec . "', '". $categorie ."','" . $souscategorie . "','" . $message . "', '', '')");

    }
    ?>

  6. merci à tous les deux pour vos réponses, j'essaie pour l'instant la réponse de KnockedMaster mais je galère. Voilà mon code :

    $message = nl2br(htmlentities(htmlspecialchars($_POST['message']))); // De même pour le message

    $string = '$message';
    $badString = 'http://';// Le mauvais mot


    if((strpos($string, $badString) === FALSE){
    echo "<script language='Javascript'>

    <!--

    alert('Votre message à bien été envoyé !');

    // -->

    </SCRIPT>";
    }
    else{
    echo "<script language='Javascript'>

    <!--

    alert('Pas d'adresse web, merci !');

    // -->

    </SCRIPT>";
    }

    Pour l'instant ça ne veut même plus m'afficher la page.

  7. Bonjour,

    J'ai un mec qui m'envoie des messages avec du html dedans à partir d'un formulaire de mon site et qui pourri mon site. Le html apparait sous sa forme bute.

    Comment éviter cela ? En php j'ai dejà mis ça pour le traitement du message:

    $message = nl2br(htmlspecialchars($_POST['message']));

    J'aimerai en fait carrement interdire l'envoi de formulaire au complet si dans le message on trouve des liens ou des adresse internet. Est-ce possible ?

    Merci d'avance

  8. pas vraiment besoin, un simple cookie ferait l'affaire, voire même juste dans ton formulaire de saisie, ton if valide dans la base et à la suite ne devrait afficher qu'une partie du formulaire (sans le lien), le else ayant l'intégralité du formulaire

    Je n'ai pas de formulaire, c'est juste un lien. Mais si c'est possible et surtout plus simple, je suis preneur. Comment crée un cookie. et comment interdire le vote pour le message déjà voté et pas l'ensemble des messages avec ce cookie

  9. Voilà où j'en suis : J'ai juste réussi a faire enregistrer l'ip du visiteur et l'id du message. Mais maintenant je ne vois pas comment faire la condition si l'ip et l'id du message sont déjà enregistré ne pas prendre en compte le vote.

    if (isset($_GET['id']) AND isset($_GET['votetranquille']))
    {
    $id=$_GET['id'];
    $ip=$_SERVER['REMOTE_ADDR'];
    if(true){//true c-à-d si votre formulaire est validé
    }
    mysql_query("UPDATE monsite SET votetranquille=votetranquille+1 WHERE id='$id'");
    [b]mysql_query("INSERT INTO vote VALUES('" . $id . "', '" . $ip . "')");[/b]
    }

  10. merci beaucoup pour ton aide mais pourrais-tu me donner un peu plus de détail. Ca ne fait pas longtemps que je me suis mis au PHP.

    comment faire pour enregistrer l'ip (en me creusant la tête je devrais y arriver) et surtout une fois qu'il est enrgistrer comment faire pour qu'il ne puisse plus voter ?

  11. Bonjour à tous,

    Je poste sur ce forum car j'ai déjà essayé de trouver une solution en JS mais en vain. Alors on m'a orienté vers le PHP.

    J'ai fais mon premier site et maintenant je buche sur un problème.

    Sur mon site des internautes viennent poster des messages et on peut ensuite voter pour ces messages.

    Le vote se fait grâce à un lien qui incrémente de +1 un champs d'une base de donnée :

    <a href="index.php?page=<?echo "$page"?>&votecuncon=r&categorie=<?php echo "$categorie" ?>&souscategorie=<?php echo "$souscategorie" ?>&id=<?php echo $donnees['id'];?>" >voter</a>

    La partie sql :

    if (isset($_GET['id']) AND isset($_GET['votecuncon']))
    {
    $id=$_GET['id'];
    if(true){//true c-à-d si votre formulaire est validé
    }
    mysql_query("UPDATE tousdescons SET votecuncon=votecuncon+1 WHERE id='$id'");
    }

    tout cela fonctionne mais j'aimerais que chaque visiteurs ne puisse voter qu'une fois. Le problème c'est que j'ai déjà essayé en désactivant le lien quand on clique dessus(en javascript) mais comme la page se recharge , le lien se réactive de suite. Merci d'avance pour votre aide.

  12. Bonjour à tout le monde

    Sur mon site j'ai mis en place des fonds écrans. Donc j'affiche une petite miniature avec en dessous le lien "télécharger" . Ça marche super bien sur firefox. Sur IE ça ouvre la fenêtre qui demande de télécharger, on valide mais ça ne télécharge que 0 octet et donc le fichier téléchargé est inexploitable.

    voici le lien :

    <a href="envoi_image.php?filename=http://www.monsite.net/telecharger/fondecran/1024x768/fondecran1p.jpg"> télécharger</a>

    voici le fichier envoi_image.php :

    <?php
    if (isset($_GET["filename"]))
    {
    $filename=$_GET["filename"];
    // ne conserver que le nom du fichier : le nom que verra s'afficher l'utilisateur
    $uploadname=basename($filename);

    // Envoi du fichier
    header('Content-Transfer-Encoding: none');
    header('Content-Type: application/octetstream');
    header('Content-Disposition: attachment; filename="'.$uploadname.'"');
    header('Content-length: '.filesize($filename));
    header("Pragma: no-cache");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0, public");
    header("Expires: 0");
    readfile($filename) OR die();
    }
    ?>

    Merci pour votre aide

  13. Bonjour,

    Sur mon site j'ai un menu déroulant horizontale. Le problème est qu'a chaque chargement de la page le menu se déroule et rentre à chaque fois. C'est franchement lourd.

    voici le code :

    <dl>
    <dt onmouseover="java script:montre('smenu10');"><span style="color:orange;">Menu</span></dt>
    <dd id="smenu10" >
    <ul>
    <li ><a href="index.php">Accueil</a></li>
    <li ><a href="roi.php">Le roi</a></li>
    <li><a href="top5.php">Le TOP 5</a></li>
    <li><a href="java script:mapopup('hasard.php')">hasard</a></li>
    <li><a href="faq.php">F.A.Q</a></li>
    <li><a href="goodies.php" >Goodies</a></li>

    </ul>
    </dd>

    </dl>

    Merci d'avance.

×
×
  • Créer...