Erreur après mise en ligne site

RAPH -  
 RAPH -
Bonjour,

j'ai une application php qui fonctionne très bien en local mais une fois en ligne , plusieurs erreurs:
1. Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /htdocs/public/www/....php:2) in /....php on line 4 suivi de
Warning: Cannot modify header information - headers already sent by (output started at /htdocs/public/www/....php:2) in ....php on line 43

3 réponses

  1. ailp Messages postés 95 Statut Membre 8
     
    Salut

    Peux-tu nous mettre le code ta page ?

    +++
    0
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Salut.
    Pour pouvoir utiliser les fonctions qui modifient les entêtes HTTP (header, session_start, setcookie, ...), celles-ci ne doivent pas être envoyée au navigateur avant. Elles sont envoyées avant le premier caractère ou à la fin de l'exécution du script. Si l'erreur "headers already sent" s'affiche, c'est parce que tu as quelque-chose en-dehors des instructions PHP (<?php ... ?>) ou que tu fais un echo avant l'appel à la fonction. S'il n'y a aucun caractère et que tu es en UTF-8, vérifie que le caractère BOM ne soit pas présent.
    0
  3. RAPH
     
    voici mon code:
    <?php
    //initialisation des sessions
    session_start();
    // utilité strip_tags supprime les balises HTML
    // exemple : <h1>test</h1> ==> test
    // récuparation des données envoyé en POST par le formulaire
    //print_r($_POST);

    $codeClient=strip_tags($_POST['codeClient']);
    $nomEntreprise=strip_tags($_POST['nomEntreprise']);
    $refChantier=strip_tags($_POST['refChantier']);
    $email=strip_tags($_POST['email']);
    $telephone=strip_tags($_POST['telephone']);
    $code=strip_tags($_POST['code']);

    // inclusion des informations de connexion à la BBD
    include('config/bdd_config.php');
    // enregistrement des données dans des variables de sessions

    $_SESSION['codeClient']=$codeClient;
    $_SESSION['nomEntreprise']=$nomEntreprise;
    $_SESSION['refChantier']=$refChantier;
    $_SESSION['email']=$email;
    $_SESSION['telephone']=$telephone;

    // $codeClient!="" est équivalent à !empty($codeClient)
    if(!empty($codeClient))
    {

    $req="SELECT id FROM client WHERE numero_client='$codeClient' and codePostal='$code'";
    if(mysql_num_rows(mysql_query($req))==1)
    {
    // création d'une requete SQL pour inserer le visiteur dans la table visite_client
    // NOW() permet de récupérer la date actuelle en mysql
    $client="OUI";
    $_SESSION['client']=$client;
    $requete="INSERT INTO visite_client(Code_client,Entreprise,Mail, Telephone,Projet,Date) VALUES ('$codeClient','$nomEntreprise','$email','$telephone','$refChantier',NOW())";
    // execution de la requete SQL
    mysql_query($requete);
    // redirection vers la page inter.php avec le code _etat=1 pour "deja client"
    header("Location:inter.php?_etat=1");

    }
    else
    {
    header("Location:../index.php?erreur=code");
    $client="NON";
    }
    }
    else
    {
    // création d'une requete SQL pour inserer le visiteur dans la table visite_autre
    // NOW() permet de récupérer la date actuelle en mysql
    $requete="INSERT INTO visite_autre(Code_client,Entreprise,Mail, Telephone,Projet,Date) VALUES ('$codeClient','$nomEntreprise','$email','$telephone','$refChantier',NOW())";
    // execution de la requete SQL
    mysql_query($requete);

    ?>

    <!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=utf-8" />
    <title>Wagner & Co - Choix</title>
    <!-- placer ces balises si il n'y a pas de feuille de style externe attachée -->
    <style type="text/css">
    </style>
    <!--
    Pour externatiliser un code CSS :
    - Sélectionner le code
    - Menu Format > Style CSS > Deplacer les regles CSS
    - Choisir une nouvelle feuille de style
    - Enregistrer
    -->
    <link href="../css/style.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <div id="formulaireAccueil">
    <p><img src="../img/logo.jpg" alt="" width="465" /> </p>

    <script type="text/javascript">
    <!--
    function MM_jumpMenu(targ,selObj,restore){ //v3.0
    eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
    if (restore) selObj.selectedIndex=0;
    }
    //-->
    </script>

    <form name="form" id="form">
    <p> </p>
    <p>Voulez vous ouvrir un compte client ? </p>
    <p>
    <select name="jumpMenu" id="jumpMenu" onChange="MM_jumpMenu('parent',this,0)">
    <option value="#" selected="selected">---</option>
    <option value="ouvertureCompteClient.php">Oui</option>
    <option value="inter.php?_etat=2">Non</option>
    </select>
    </p>
    </form>
    </div></body></html>

    <?php
    }

    ?>
    0