Aller au contenu

Gecko64

Membre+
  • Compteur de contenus

    434
  • Inscrit(e) le

  • Dernière visite

Messages postés par Gecko64

  1. Bonjour, j'essaie de faire aller la librairire GD mais j'ai un souci :(

    J'ai récupéré un code sur internet montrant le fonctionnement de base mais quand je le fais tourner, il me dis que l'image générée comporte des erreurs et ne peut de ce fait être affichée dans mon navigateur internet.

    <?php
    // on spécifie le type de document que l'on va créer (ici une image au format PNG
    header ("Content-type: image/png");

    // on dessine une image vide de 200 pixels sur 100
    $image = @ImageCreate (200, 100) or die ("Erreur lors de la création de l'image");

    // on applique à cette image une couleur de fond, les couleurs étant au format RVB, on aura donc ici une couleur rouge
    $couleur_fond = ImageColorAllocate ($image, 255, 0, 0);

    // on dessine notre image PNG
    ImagePng($image);
    ?>

    Une chose me chiffonne déjà dans ce code est qu'il stock des informations dans la variable $couleur_fond mais je vois nulle part son utilisation...

    Je ne sais pas si quelqu'un peut m'éclairer la dessus? :)

    Merci d'avance.

  2. J'avoue me demander quoi pcq ça marche sur mon PC en local et sur le serveur fini... :unsure:

    J'ai bon regarder, je ne vois pas d'où ca vient... :(

    Voila le code source de ma page web:

    <html>
    <head>
    <title>Ma galerie - Admin</title>
    <style type="text/css">
    table
    {
    border-collapse:collapse;
    border: 2px solid blue;
    margin: auto;
    }
    th,td
    {
    border: 1px solid blue;
    }
    body
    {
    background-color:#bbd3c7;
    color:black;
    }
    h1
    {
    color: Blue;
    }
    </style>

    </head>


    <?php include("_protect.php");
    if($isOK)
    {
    //Version privée de la page
    ?>

    <center>
    Gestion du livre d'or :
    <hr/>

    <a href="livredor_admin_rediger.php"> Ajouter une Entrée dans le livre d'or</a>
    <hr/>
    </center>

    <?php // Connexion à la BD localhost+Login+Pass
    include("connexion_BD.php");
    ?>

    <?php
    // Modifiction ou Introduction d'un nouveau message
    if (isset($_POST['Pseudo']) AND isset($_POST['Date']) AND isset($_POST['Heure']) AND isset($_POST['Commentaire']))
    {
    $Pseudo = addslashes($_POST['Pseudo']);
    $Commentaire = addslashes($_POST['Commentaire']);
    $Date = addslashes($_POST['Date']);
    $Heure = addslashes($_POST['Heure']);

    if ($_POST['id_news'] == 0)
    {
    mysql_query("INSERT INTO messages Values ('','$Pseudo','$Commentaire','$Date','$Heure')");
    }
    else
    {
    mysql_query("UPDATE messages SET Pseudo='" . $Pseudo."', Commentaire='". $Commentaire."',Date='" . $Date. "', Heure='" . $Heure."'WHERE ID=" . $_POST['id_news']);
    }
    }

    // Effacement des messages pour lesquel on a cliqué sur le lien supprimer
    if(isset($_GET['supprimer_news']))
    {
    mysql_query('DELETE FROM messages WHERE ID=' .$_GET['supprimer_news']);
    }

    // Affichage des messages
    ?>

    <?php// Afficher nbre d'entrees ds livre d'or
    $reponse = mysql_query("SELECT COUNT(*) AS nbre_entrees FROM messages");// combien d'entrees il y a ds la tables?
    $totalmessages = mysql_fetch_array($reponse); // recopier chaque champ de la table ds un tableau en vue de affichage ?>
    <center>
    Il y a actuellement
    <?php
    echo $totalmessages['nbre_entrees'];
    if ($totalmessages['nbre_entrees']>1)
    {
    ?>
    messages dans le livre dor
    <?php
    }
    else
    {
    ?>
    message dans le livre dor
    <?php
    }
    ?>

    <table>
    <tr>
    <th>Supprimer : </th>
    <th>Modifier : </th>
    <th>Pseudo : </th>
    <th>Date : </th>
    <th>Heure : </th>
    <th>Commentaire : </th>
    </tr>
    <?php
    $reponse = mysql_query("SELECT * FROM messages ORDER BY ID desc");
    while( $donnees = mysql_fetch_array($reponse)) // recopier chaque champ de la table ds un tableau en vue de affichage
    {
    ?>
    <tr>
    <td><a href="livredor_admin.php?supprimer_news=<?php echo($donnees['ID'])?>"> Supprimer </a></td>
    <td><a href="livredor_admin_rediger.php?modifier_news=<?php echo($donnees['ID'])?>"> Modifier</a></td>
    <td><?php echo stripslashes($donnees['Pseudo']);?></td>
    <td><?php echo stripslashes($donnees['Date']);?></td>
    <td><?php echo stripslashes($donnees['Heure']);?></td>
    <td><?php echo stripslashes($donnees['Commentaire']);?></td>
    </tr>
    <?php
    }
    ?>
    </table>

    <?php
    mysql_close();
    ?>

    <?php
    }
    else
    {
    //Version publique de la page
    ?>
    <body>
    <center>
    <h1>L'accès à cette page nécessite une identification préalable...</h1>
    <a href="admin.php"> S'identifier </a>
    </center>
    <?php
    }
    ?>

    </body>
    </html>

  3. Bonjour, voila j'ai un souci avec une requête SQL dans mon petit site.

    Le requête est la suivante: SELECT COUNT(*) AS nbre_entrees FROM messages; :unsure:

    Sous la dernière version de wamp, ca passe impeccable mais sur un serveur avec une version php5.0 et mysql 5.0.45, ca se plante...

    Le code PHP est le suivant:

    $reponse = mysql_query("SELECT COUNT(*) AS nbre_entrees FROM messages");

    Et l'erreur sur le site est la suivante:

    Parse error: syntax error, unexpected T_VARIABLE in /home/gecko64/www/elec-alain/livredor_admin.php on line 76

    :(

    Quand je fais la requête par PHPmyadmin, il me sort le résultat mais avec une sorte de warning au dessus...

    Je ne sais pas si quelqu'un a une idée car ma requête d'après plein de sites semble correcte :unsure:

    Merci

    Gecko64

  4. Bonjour, voilà je suis en train de me prendre la tête depuis 30min sur une css :(

    Pour vous expliquer, j'ai une balise div qui contient un texte.

    J'essaie dans ce div de mettre un texte aligné a mi hauteur tout comme on peut le faire avec text-align:center; pour le centrer mais je n'y arrive pas... :(

    En fait j'ai trouvé en cherchant sur le net la propriété suivante: vertical-align: middle; mais ca ou rien c'est pareil... :unsure:

    Je ne sais pas si quelqu'un peut m'aiguiller la dessus? :)

    Merci

    Gecko64 (Marc)

  5. Merci Trocweb mais comme je dois mettre ca dans mon travail de fin d'étude, je ne peux pas utiliser un outil tout pré fait.

    J'ai trouvé des moyen de faire ca mais ils utilisent des fonctions système que j'essaie au minimum d'utiliser.

    Donc en fait je pose ma question ici surtout pour savoir si quelqu'un n'a pas une idée ou moyen de procédé pratique et sécurisé pour effectuer cela.

    En fait ca doit permettre a la personne pour qui je fais le site de pouvoir faire la sauvegarde de sa DB en un clic ;)

  6. Bonjour et oui la question du jour avec Gecko64 :P

    Voila en fait je voulais savoir comment je pourrais faire en PHP pour effectuer le backup d'une base de donnée? (Utilisation de phpmyadmin ou autre outil dans le genre m'est interdite je précise <_<)

    Si il existe une fonction en PHP qui gère tout ca? :unsure:

    J'ai regardé sur le net mais on me propose des solutions assez bidouille ici: http://www.php-mysql-tutorial.com/perform-...-backup-php.php

    Je dis bidouille pcq je n'aime pas la fonction systeme(); qui peut révéler des incompatibilités pour certaines commandes si on passe d'un serveur Linux a Windows.

    Personnellement, je voulais savoir si il était possible de lancer un téléchargement de la base de données sans la stocker sur le disque dur du serveur?

    Un peu comme certains forums font pour faire le backup :)

    Edit: je vais quand même apporter une petite précision, il est possible de faire ca sans la fonction systeme() ou exec()?

    Je n'aime pas trop exécuter des commandes en locale ainsi en fait :-/

    Enfin je vous demande pour avoir une idée de solution propre légère comme je sais qu'il y a pas mal de pro PHP ici et avec le moins de risque en matière de faille de sécu.

    Merci d'avance :)

    Gecko64 (Marc)

  7. Erf trop rapide pour moi, pas eu le temps de répondre :D

    Oui comme a dis Dan, désactive le compte root sur le SSH et en fait tu dois te log sur le serveur en simple user pour ensuite avec un 'su' passer en root ;)

    C'est une règle de sécurité non négligeable :)

  8. Ok merci je vais essayer d'implémenter tout ca dans mon code sans me planter ^^:P

    EDIT: Bon voila j'ai changé et le souci des ' est totalement résolu :D

    Par contre pour le <br />, j'ai créé la fonction mais il ne semble pas le remettre en /n après l'insertion des données dans la DB :(


    <html>
    <head>
    <title>Contenu du site - Admin</title>
    <style type="text/css">
    table
    {
    border-collapse:collapse ;
    border: 2px solid blue ;
    margin: auto ;
    }
    th,td
    {
    border: 1px solid blue ;
    }
    body
    {
    background-color:#bbd3c7 ;
    color:black ;
    }
    h1
    {
    color: Blue ;
    }
    </style>
    </head>
    <body>

    <?php
    include("_protect.php");
    //Version privée de la page
    if($isOK)
    {

    include("connexion_BD.php") ;

    $retour = mysql_query("SELECT * FROM informations WHERE id='0'") ;
    $retour = mysql_fetch_array($retour) ;

    $societe = $retour['accueil_societe'];
    $mission = $retour['accueil_mission'];
    $adressepostale = $retour['nouscontacter_adressepostale'];
    $email = $retour['nouscontacter_email'];
    $telephone = $retour['nouscontacter_telephone'] ;
    $gsm = $retour['nouscontacter_gsm'];

    //Mise a jour des informations ici en testant si c'est bien complete.
    if (isset($_POST['societe']) or isset($_POST['mission'])or isset($_POST['adressepostale'])or isset($_POST['email'])or isset($_POST['telephone'])or isset($_POST['gsm'])) // vrai si le champ societe existe
    {
    if ( (($_POST['societe'])!=Null) and (($_POST['mission'])!=Null) and (($_POST['adressepostale'])!=Null)and (($_POST['email'])!=Null)and (($_POST['telephone'])!=Null)and (($_POST['gsm'])!=Null)) // vrai si le champs societe est complété
    {
    // detecter code HTML malveillant eventuel
    $societe = htmlentities($_POST['societe']);
    $mission = htmlentities($_POST['mission']);
    $adressepostale = htmlentities($_POST['adressepostale']);
    $email = htmlentities($_POST['email']);
    $gsm = htmlentities($_POST['gsm']);
    $telephone = htmlentities($_POST['telephone']);

    // mise en place des retours à la ligne
    $societe= NL2BR($societe);
    $mission= NL2BR($mission);
    $adressepostale = NL2BR($adressepostale);
    $email = NL2BR($email);
    $gsm = NL2BR($gsm);
    $telephone = NL2BR($telephone);

    //On ajoute des \ devant les ' pour pas que le SQL foire.
    $societe = addslashes($societe);
    $mission = addslashes($mission);
    $adressepostale = addslashes($adressepostale);
    $email = addslashes($email);
    $gsm = addslashes($gsm);
    $telephone = addslashes($telephone);

    $id=0 ;
    //On insere les donnees dans la DB.
    mysql_query("UPDATE informations SET id='" .$id."',accueil_societe='" . $societe."', accueil_mission='". $mission."',nouscontacter_telephone='" . $telephone. "', nouscontacter_gsm='" . $gsm."', nouscontacter_adressepostale='". $adressepostale."', nouscontacter_email='". $email."' WHERE id='0'");

    //Apres insertion des données, on les retraite pour les afficher correctement dans le formulaire.
    //Fonction qui elimite les <br />.
    function br2nl($texte)
    {
    return preg_replace('/<br\\s*?\/??>/i', '', $texte);
    }
    // Traitements pour l'elimination des <br />
    $societe = br2nl($societe);
    $mission = br2nl($mission);
    $adressepostale = br2nl($adressepotale);
    $email = br2nl($email);
    $telephone = br2nl($telephone);
    $gsm = br2nl($gsm);

    //On vire les \ mis dans la DB pour resoudre les soucis avec des ' (ICI on a bien le texte sans les \ Teste en debug avec un echo)
    $societe= stripslashes($societe);
    $mission = stripslashes($mission);
    $adressepostale = stripslashes($adressepostale);
    $email = stripslashes($email);
    $telephone = stripslashes($telephone);
    $gsm = stripslashes($gsm);
    }
    }

    ?>

    <center>
    Gestion du contenu textuel du site:
    <hr/>
    <form action="contenu_admin.php" method="post">
    <p>
    Société :
    <textarea name="societe" cols="60" rows="5"><?php echo $societe;?> </textarea><br/>
    Mission :
    <textarea name="mission" cols="60" rows="5"><?php echo $mission;?> </textarea><br/>
    Téléphone:
    <input type="text" size="28" name="telephone" value="<?php echo $telephone; ?>"/> </br>
    Gsm:
    <input type="text" size="28" name="gsm" value="<?php echo $gsm; ?>"/> </br>
    Addresse postale:
    <textarea name="adressepostale" cols="25" rows="4"><?php echo $adressepostale;?> </textarea><br/>
    Email:
    <input type="text" size="28" name="email" value="<?php echo $email; ?>"/> </br>

    <input type="submit" value="Envoyer" />
    </p>

    </center>


    <?php
    mysql_close() ;
    }
    else
    {
    //Version publique de la page
    ?>
    <center>
    <h1>L'accès à cette page nécessite une identification préalable...</h1>
    <a href="admin.php"> S'identifier </a>
    </center>
    <?php
    }
    ?>

    </body>
    </html>

    Quelqu'un a une idée pcq ca me semble logique?

    EDIT2: Ok j'ai trouvé, j'avais inséré ca dans une fonction et au rechargement, ben ne passant pas dedans, le traitement pour la suppression des <BR> n'était pas exécuté ;)

    Un grand merci !

  9. Bonjour :)

    Voilà j'ai un code et comme il est stipulé dans le sujet de mon post, j'ai un souci avec des formulaires et des <br />.

    Vous avez tous surement déjà eu la surprise du /n dans un formulaire a remettre en <br /> (ce qui va pour moi), et inversement pour le ré afficher dans une zone d'édition (ce qui ne va pas chez moi :( )

    Bref, j'ai essayé par plusieurs méthodes mais rien a faire donc voilà la raison de mon post...

    Bon pour vous ennuyer deux plus qu'une :P j'ai un souci aussi avec les ' qui se mettent dans mon SQL.

    Exemple: je veux mettre dans le champ d'une table le tête :j'ai faim, ben ca merdouille... (sur l'idée de l'injection SQL si je ne m'abuse...)

    Bref, je sais que je dois convertir le ' en caractère ou plutôt code HTML depuis mon formulaire mais la aussi, n'étant pas encore un grand habitué du PHP (vous m'en verrez désolé mais on commence tous un jour), voilà pourquoi j'ai besoin d'aide... ;)

    Le code de ma page qui est une page administration servant a gérer un contenu sur un site:

    <html>
    <head>
    <title>Contenu du site - Admin</title>
    <style type="text/css">
    table
    {
    border-collapse:collapse;
    border: 2px solid blue;
    margin: auto;
    }
    th,td
    {
    border: 1px solid blue;
    }
    body
    {
    background-color:#bbd3c7;
    color:black;
    }
    h1
    {
    color: Blue;
    }
    </style>

    </head>
    <body>

    <?php
    include("_protect.php");
    //Version privée de la page
    if($isOK)
    {

    include("connexion_BD.php");

    $retour = mysql_query("SELECT * FROM informations WHERE id='0'");
    $retour = mysql_fetch_array($retour);

    $societe = $retour['accueil_societe'];
    $mission = $retour['accueil_mission'];
    $adressepostale = $retour['nouscontacter_adressepostale'];
    $email = $retour['nouscontacter_email'];
    $telephone = $retour['nouscontacter_telephone'];
    $gsm = $retour['nouscontacter_gsm'];

    // elimination des <br />
    $societe = str_replace("<br />","",$societe);// soucis ici !!
    $mission = str_replace("<br />","",$mission);
    $adressepostale = str_replace("<br />","",$adressepostale);
    $email = str_replace("<br />","",$email);
    $telephone = str_replace("<br />","",$telephone);
    $gsm = str_replace("<br />","",$gsm);



    if (isset($_POST['societe']) or isset($_POST['mission'])or isset($_POST['adressepostale'])or isset($_POST['email'])or isset($_POST['telephone'])or isset($_POST['gsm'])) // vrai si le champ societe existe
    {
    if ( (($_POST['societe'])!=Null) and (($_POST['mission'])!=Null) and (($_POST['adressepostale'])!=Null)and (($_POST['email'])!=Null)and (($_POST['telephone'])!=Null)and (($_POST['gsm'])!=Null)) // vrai si le champs societe est complété
    {
    // detecter code HTML malveillant eventuel
    $societe = htmlentities($_POST['societe']);
    $mission = htmlentities($_POST['mission']);
    $adressepostale = htmlentities($_POST['adressepostale']);
    $email = htmlentities($_POST['email']);
    $gsm = htmlentities($_POST['gsm']);
    $telephone = htmlentities($_POST['telephone']);

    // mise en place des retours à la ligne
    $societe= NL2BR($societe);
    $mission= NL2BR($mission);
    $adressepostale = NL2BR($adressepostale);
    $email = NL2BR($email);
    $gsm = NL2BR($gsm);
    $telephone = NL2BR($telephone);

    $id=0;
    mysql_query("UPDATE informations SET id='" .$id."',accueil_societe='" . $societe."', accueil_mission='". $mission."',nouscontacter_telephone='" . $telephone. "', nouscontacter_gsm='" . $gsm."', nouscontacter_adressepostale='". $adressepostale."', nouscontacter_email='". $email."' WHERE id='0'");

    }
    }

    ?>



    <center>
    Gestion du contenu textuel du site:
    <hr/>

    <form action="contenu_admin.php" method="post">
    <p>
    Société :
    <textarea name="societe" cols="60" rows="5"><?php echo $societe;?> </textarea><br/>
    Mission :
    <textarea name="mission" cols="60" rows="5"><?php echo $mission;?> </textarea><br/>
    Téléphone:
    <input type="text" size="28" name="telephone" value="<?php echo $telephone; ?>"/> </br>
    Gsm:
    <input type="text" size="28" name="gsm" value="<?php echo $gsm; ?>"/> </br>
    Addresse postale:
    <textarea name="adressepostale" cols="25" rows="4"><?php echo $adressepostale;?> </textarea><br/>
    Email:
    <input type="text" size="28" name="email" value="<?php echo $email; ?>"/> </br>

    <input type="submit" value="Envoyer" />
    </p>

    </center>


    <?php
    mysql_close();
    }
    else
    {
    //Version publique de la page
    ?>
    <center>
    <h1>L'accès à cette page nécessite une identification préalable...</h1>
    <a href="admin.php"> S'identifier </a>
    </center>
    <?php
    }
    ?>

    </body>
    </html>

    et pour la table de ma base de données s'y attachant:

    create table `informations` (
    `id` int(4) NOT NULL,
    `accueil_societe` TEXT NOT NULL,
    `accueil_mission` TEXT NOT NULL,
    `nouscontacter_telephone` TEXT NOT NULL,
    `nouscontacter_gsm` TEXT NOT NULL,
    `nouscontacter_adressepostale` TEXT NOT NULL,
    `nouscontacter_email` TEXT NOT NULL);

    Précision sur la DB, je me base sur un ID dedans qui doit être inséré et qui est mis a 0 (Merise inspired...)

    Ca me permet de savoir ce que je dois éditer et ou le réécrire dans ma table :)

    Un grand merci d'avance pour votre aide.

    Gecko64 (Marc)

  10. Bonjour voilà j'ai une question assez basique mais sur laquelle je me prend vraiment la tête en ce moment.

    Pour expliquer, j'ai cette ligne ci:

    echo '<td><a href="/photos/pics/' , $tableau[$i] , '" title="Cliquez pour voir en grand..."><img src="photos/mini/' , $tableau[$i] , '" alt="Image" /></a></td>';

    Dedans on retrouve des ' alors que c'est déconseillé de faire cela et qu'il vaut mieux prendre des "

    Mon souci est que je ne sais pas trop comment les changer?

    On m'a expliqué un truc de \" mais qui n'a pas l'air de passer chez moi ^^ (je veux dire, comprendre comment ca marche)

    Je ne sais pas si quelqu'un saurait me mettre un exemple clair pour m'aider a piger cela?

    En fait je cherche a changer cette ligne la pcq d'un php 4.1 a 5.0 ca passe du ca marche a erreur de syntaxe comme celle-ci:

    Parse error: syntax error, unexpected $end in C:\wamp\www\elec-alain\Realisations.php on line 114

    et je pense fortement que ca doit venir de la en fait...

    Bref, vous voyez je rame "un peu" :unsure:

    Merci :)

  11. Bonjour :)

    Ce matin en me levant, une question m'est passée par la tête :P

    Je voulais savoir si le système de fichier choisi pour héberger un serveur de base de donnée sous MySQL par exemple, pouvait altérer le fonctionnement et la rapidité du temps de réponse du serveur SQL? :unsure:

    Comme je sais que sous Linux des systèmes de fichiers comme l'EXT3 ne fragmentent pas comparé au NTFS et FAT32...

    Je ne sais pas si il y a d'autres critères qui pourraient rentrer en considération?

    Merci :)

  12. A part ceux qui font du streaming ou pour un serveur backup qui a vraiment besoin d'1To de disque dur ?

    Bha je vois qu'un seul type de site pouvant avoir besoin de ca, c'est un site comme Jamendo qui traite la musique libre ;)

    A pars ca c'est vrai que ca fait beaucoup. On pourrait en stocker des log la dessus :D

    Sinon pour ce qui est de la machine, c'est vrai que c'est beaucoup pour un site "classique" mais a choisir, je préfère encore OVH quand je me souviens comment le réseau de Free était sous estimé...

    Saturation a certains endroits, temps de latence plus importants etc... A savoir si ca a évolué depuis, aucune idée.

  13. Ha ben ca c'est un annif qui ne se manque pas! ;)

    5ans, c'est vrai que ca commence a rentrer dans la catégorie des sites anciens mais pas pour autant mauvais, bien du contraire ^^

    Bha que dire de plus si ce n'est bon annif au Hub et merci à tous ceux qui font que cet endroit vit ;)

    En espérant que ca continue longtemps mais à mon avis, je crois bien que ca sera le cas :D

  14. Je ne connais pas vraiment Freeglobes mais juste pour savoir, dedans tu as pas différentes options que tu peux utiliser genre spécifier un server smtp ou alors utiliser la fonction mail ou directement sendmail parfois?

    Sinon dans le php.ini, pour régler ce qui est mail sous Linux Debian tu as cette section dedans:

    [mail function]
    ; For Win32 only.
    ;SMTP = localhost
    ;smtp_port = 25

    ; For Win32 only.
    ;sendmail_from = me_AT_example.com

    ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
    sendmail_path = "/usr/sbin/sendmail -t -i"

    Chez moi, il est configuré par défaut pour utiliser sendmail...

    Sans en savoir plus essaie toujours de chercher de ce coté la... :unsure:

    Je n'ai jamais touché a tout ca en détail déjà que j'ai le port 25 fermé chez moi pour faire un serveur mail (les enfoirés <_<)

×
×
  • Créer...