Relier base de donnée à site

Fireofmage
Invité n'ayant pas de compte PHPfrance

05 mai 2012, 09:23

Bonjour, je possède un serveur de jeu avec microsoft sql server, et je voudrai que les inscriptions soient automatiques, c'est à dire relier la base de donnée à un site, pour que ce ne soit pas moi qui m'y connecte pour enregistrer les personnes. L'inscription serait, identifiant, mot de passe, date de naissance.

Cordialement, Fireofmage

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

05 mai 2012, 09:33

salut,

tu veux utiliser ce qu'il y a déjà dans le serveur SQL ?

sur le principe ce n'est pas un problème, la difficulté réside dans les contraintes technique imposé par les hébergeurs.

La plus importante étant : est ce que le serveur SQL accepte les connexions entrantes "de n'importe où" ?

si l'accès est possible c'est très simple cela fonctionne exactement comme en local, sauf qu'au lieu de mettre localhost dans le nom de serveur il faut mettre l'ip (ou adresse dns).
par exemple avec PDO
<?php
$pdo = new PDO('mssql:host=lenom.duserveur.ext;dbname=testdb',$utilisateur,, $motdepasse);
?>
les infos de la doc

http://fr2.php.net/manual/fr/ref.pdo-dblib.php
http://fr2.php.net/manual/fr/ref.pdo-db ... ection.php

tu peux aussi utiliser l'extension php classique
<?php
$connexion = mssql_connect('lenom.duserveur.ext','utilisateur','motdepasse',true);
?>
@+
Il en faut peu pour être heureux ......

Fireofmage
Invité n'ayant pas de compte PHPfrance

05 mai 2012, 10:07

On m'a donnée ce code :

Code : Tout sélectionner

<?php include"conn.php"; $register=$_POST['register']; if(isset($register)){ $username=$_POST['username']; $password=$_POST['password']; $password2=$_POST['password2']; $date_now=date('Y-m-d'); if($password==$password2 ){ $query = "SELECT * FROM Member Where ID='$username'"; $result_ = mssql_query($query); $numRows = mssql_num_rows($result_); if($numRows==0){ $sql="up_CreateMemberAccount '0','$username','$password','1','$date_now'"; $result = mssql_query($sql); if($result) echo"<script type='text/javascript'> alert(' Registration Successful. ');</script>"; else echo"<script type='text/javascript'> alert(' Username is taken ');</script>"; }else{ echo"<script type='text/javascript'> alert(' Username already exists ');</script>"; } }else{ echo"<script type='text/javascript'> alert(' Passwords does not match ');</script>"; } } ?>
Que dois-je modifier ?

Cordialement, Fireofmage

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

05 mai 2012, 14:40

Rien, le fichier de connexion.

@+
Il en faut peu pour être heureux ......

Fireofmage
Invité n'ayant pas de compte PHPfrance

05 mai 2012, 21:21

Ah j'ai réussi, mais sur ma page internet d'inscription, tout en haut j'ai ce message d'erreur :


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /var/www/dovahkiin-forum.mtxserv.fr/public_html/index.php:1) in /var/www/dovahkiin-forum.mtxserv.fr/public_html/index.php on line 1

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/www/dovahkiin-forum.mtxserv.fr/public_html/index.php:1) in /var/www/dovahkiin-forum.mtxserv.fr/public_html/index.php on line 1

J'ai regardé et à la ligne 1 j'ai : <? session_start();?>

Quel est le problème ?


Cordialement, Fireofmage

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

05 mai 2012, 23:27

tu doit avoir un espace, une ligne vide ou un caractère non imprimable se trouve avant le <?

Si ton fichier est encodé en utf-8 avec BOM il faut l'encode en UTF-8 classique (donc sans BOM)


@+
Il en faut peu pour être heureux ......