IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

PHP - Oracle


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Points : 12
    Points
    12
    Par défaut PHP - Oracle
    Bonjour,

    je developpe un Intranet grace a PHP4 sur une base Oracle,
    j'arrive a me connecté a ma base sans problème,

    Je suis bloqué sur le point suivant :

    Je m'identifie via une page(index.php) avec Login et mot de passe, je teste donc mes id grâce a une page de test(check_access.php) et si mes id ne figurent pas dans ma table d'identifiant, je retourne en page d'identification, sinon je navigue dans mon intranet.

    Est-ce que qqun pourrait m'aider car je n'avance pas et ça va faire plusieurs jours que je bloque la-dessus.

    Voici mon code de check_access.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
     
    <?PHP
     
       include("connection.php");
     
    ?>
     
    <?     
       $result=("
          SELECT *
          FROM REF_TG_UTILISATEUR
          WHERE UTL_LOGIN='" .$_POST["login"] . "'
          and UTL_PASSWORD='" .$_POST["password"] . "'
          ;");
     
       $nb=OCIParse($db, $result);
     
       OCIExecute($nb);
     
       for ($i=0; $i<$nb; $i++)
     
          {
          OCIFetchinto($nb,&$tablo,OCI_ASSOC);
          /*$tablo=ocifetcharray($result, OCI_ASSOC);*/
          }
     
       if(empty($tablo))
          {
          header("location: index.php?err=1");      
          }
     
       else
          {
          session_start();
          $_SESSION["user"]=$tablo["UTL_PRENOM"];
          $_SESSION["log"]=2;
          header("Location:stat_montures.php");
          }
    ?>

  2. #2
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut Re: PHP - Oracle
    Citation Envoyé par alex007
    Est-ce que qqun pourrait m'aider car je n'avance pas et ça va faire plusieurs jours que je bloque la-dessus.
    Cela risque d'être dur, si tu ne nous en dit pas plus sur le problème que tu rencontres... As-tu une erreur oracle ? Si oui laquelle ?

    Merci également de préciser la version d'oracle.

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Points : 12
    Points
    12
    Par défaut infos complémentaires
    Alors,

    ma version d'Oracle c'est la 8i,

    je n'ai aucunes erreurs Oracle et j'arrive a me connecter a ma base sans pb.

    J'ai testé avec des echo $_POST["login"], au debut de ma page pour voir si

    j'arrivais a posté ... donc a ce niveau pas de soucis.

    Autre chose, j'ai aussi fais un test , dès que je met ça $tablo[$i] au lieu du $_tablo dans : OCIFetchinto($nb,&$tablo,OCI_ASSOC);

    Je passe a ma navigation dans mon intranet.

    voici aussi ma page index.php si ça peut aider :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
     
    <?PHP
    	//appel de la chaine de connection
    	include("connection.php");
    ?>
     
    <html>
     
    	<title>index</title>
    	<Link rel="Stylesheet" type="text/CSS" href="PVO_STAT_CSS01.css">
     
    	<body>
     
    		<form action="check_access.php" method="post" id="form1" name="form1">
     
    			<div class="titre_index_01">
    				COM - STAT
    			</div>
     
    			<div class="msg_accueil_01">
    				Bienvenue sur la page de connection - 
    				Veuillez vous identifier avant l'utilisation
     
    				<?PHP
     
    				if (isset($_GET["err"]))
    					{
    					if ($_GET["err"]==1)
    						{
    						echo "<div class=msg_erreur_01>'Erreur de connection'</div>";
    						}
    					else
    						{
    						echo "La page necessite que vous vous connectiez : ";
    						}
    					}
    				?>
    			</div>
     
    			<div class="id_user_01">
    				IDENTIFICATION
    			</div>
     
    			<div class="login_01">
    				Login
    			</div>
     
    			<div class="id_01">
    				<INPUT Type="text" id="login" name="login">
    			</div>
     
    			<div class="mdp_01">
    				Mot de passe
    			</div>
     
    			<div class="pwd_01">
    				<INPUT Type="password" id="password" name="password">
    			</div>
     
    			<div class="com_01">
    				COM
    			</div>
     
    			<div class="entite_01">
     
    				<select size="1" name="entite" onchange="submit"()>
    				<?PHP /*
    					$result=mysql_query("
    						SELECT *
    						FROM entite
    						;");
     
    					$nb=mysql_num_rows($result);
     
    					for($i=0; $i<$nb; $i++)
    						{
    						$tablo=mysql_fetch_array($result);
    						echo "<option>" .$tablo["nom"] ."</option> ";
    						}
    				*/	
    				?>
    				<?PHP
     
    				// préparation du Select
     
    				$sql1 =" select UTF_DESCR
    					    from REF_TG_UNITEFONCTIONNELLE
    					    order by UTF_DESCR
    					    ";
     
    				$result = OCIParse ($db, $sql1);
    					     OCIExecute ($result);
     
    				$ncols = OCINumCols($result);
    					// affiche les lignes tant qu'il y en a
    					// et les colonnes une par une
     
    					while (OCIFetchInto ($result, $ligne, OCI_NUM)) 
    					{
     
    						for ($i=0;$i < $ncols; $i++) 
    						{
    						echo "<option>" . $ligne[$i] . "</option>" ;
    						}
    					}	
     
     
    				?>
    				</select>
     
    			</div>
     
    			<div class="button_01">
    				<INPUT Type="submit" id="valider" Value="Valider">
    			</div>
    		</form>
     
    	</body>
    </html>

  4. #4
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Tu ne nous dis toujours pas ce qui marche pas !!!!

    Essaye déjà
    1/ de rajouter un "ROWNUM = 1" dans ta requête : Tu dois n'avoir qu'un seul login/pwd dans ta table.
    2/ Si tu n'as besoin que du prénom, ne ramène que le prénom
    3/ Ne fais pas une boucle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $nb=OCIParse($db, $result); 
        OCIExecute($nb); 
        for ($i=0; $i<$nb; $i++) 
         { 
          OCIFetchinto($nb,&$tablo,OCI_ASSOC); 
          }
    d'ailleurs $nb c'est un nombre ? Ca m'étonnerait.

    va voir sur www.php.net c'est le meilleur site pour les fonctions php :

    ociparse() analyse la requête query sur la connexion conn, et retourne TRUE si la requête query est valide, et FALSE, si ce n'est pas le cas. query peut être n'importe quelle requête SQL.

    Note : Cette fonction a été renommée en oci_parse() pour PHP version 5.0.0 et plus récent. Pour la compatibilité ascendante, ociparse() peut toujours être utilisée. Toutefois, elle est obsolète.

    Voila ton prob doit venir de là. Supprime ta boucle.

    Sinon dernier truc, attention un header ne marche pas si tu fais un echo avant.

  5. #5
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Points : 12
    Points
    12
    Par défaut ... oui ça avance
    alors ce qui ne marche pas, c'est tout simplement ma vérification de Login et password lors de mon POST ....

    Je voudrais placer toute ma table de login et password dans un tableau associatif puis vérifier le contenu.

    Si y a login + password , alors c'est ok , sinon je suis jeté vers la page d'identification.

Discussions similaires

  1. PHP ORACLE ? Recherche une bonne methode
    Par Torando59 dans le forum Oracle
    Réponses: 4
    Dernier message: 24/01/2006, 12h54
  2. PHP & MySQL => PHP & ORACLE , INTERVAL ?
    Par kailly dans le forum Oracle
    Réponses: 1
    Dernier message: 26/07/2005, 12h22
  3. PHP & Oracle distant : installation ?
    Par Grubshka dans le forum Oracle
    Réponses: 28
    Dernier message: 15/06/2005, 08h59
  4. PHP + Oracle + PL/ SQL
    Par bchristo dans le forum SQL
    Réponses: 12
    Dernier message: 28/04/2004, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo