2013-07-28 4 views
0

Il s'agit du code qui se connecte à ma base de données SQL. Je suis nouveau avec ce genre de choses et il semble être semi-fonctionnel mais certaines fonctionnalités sur mon site ne fonctionnent toujours pas.Problèmes de connexion PHP

<?php 
$con = mysql_connect("localhost","username","password"); 
$select_db = mysql_select_db('database1',$con); 
/*$con = mysql_connect("localhost","username2","password2"); 
$select_db = mysql_select_db('database2',$con);*/ 
?> 

Ceci est le site en question: http://tmatube.com garder à l'esprit les pouvoirs ci-dessus sont remplis avec ce que le programmeur utilisé pour le test sur son propre serveur ...;) malheureusement, je ne l'ai pas accès à des soutien plus.

Quoi qu'il en soit, voici mes réflexions sur la façon dont ce code doit être modifié peut-être quelqu'un peut sonner et laissez-moi savoir si je ne me trompe pas dans mes hypothèses:

<?php 
$con = mysql_connect("localhost","username1","password1"); -------------<<< leave this line 
$select_db = mysql_select_db('DATABASE_NAME_HERE',$con); 
/*$con = mysql_connect("localhost","DB_USERNAME_HERE","DB_PASSWORD_HERE"); 
$select_db = mysql_select_db('DATABASE_NAME_HERE',$con);*/ 
?> 

Ok - maintenant à quelques problèmes J'ai remarqué ...

Qu'est-ce que cela fait?/* code ici * /? Il ne fonctionne pas du tout si je laisse ce bit.

Pourquoi est-il de se connecter à la base de données deux fois? et est-ce deux bases de données distinctes?

$select_db = mysql_select_db('DATABASE_NAME_HERE',$con); <<<---- single ' 

Lorsque j'ai essayé de voir si cette ligne était correcte les exemples que j'ai vu eu des citations comme celle-ci

$select_db = mysql_select_db("DATABASE_NAME_HERE",$con); <<<---- double " 

Lequel a raison?

+0

/** **/- ce sont des balises de commentaires, vous pouvez lire http://www.php.net/ – EvilEpidemic

+0

hm .. qui est si étrange lol dans une perspective de programmeurs (le vôtre) pourquoi aurait-il quitter la partie qui nécessite db nom d'utilisateur et pw commenté? évidemment, il ne fonctionnera pas comme ça – apexmateria

+0

@apexmateria Peut-être que la prochaine fois que vous visitez ici, vous pouvez marquer la bonne réponse si elle était utile. –

Répondre

0

Voici php mysql connecter avec mysqli:

<?php 
$link = mysqli_connect("myhost","myuser","mypassw","mybd"); 
?> 

Aucune différence ici avec "ou » (utiliser Quoi qu'il en soit mysqli et vous pouvez le recherché db en tant que paramètre 4.) php quotes

/* commentaire. */est un commentaire pour que le php ne se soucie pas de ce qui est à l'intérieur donc seulement 2 premières lignes affectent (elles sont la même base de données mysql sur la machine locale et 2 combinaisons utilisateur + mot de passe différentes). code ou en supprimant une partie du code sans l'effacer php commenting

+0

ok donc cela devrait fonctionner correctement? apexmateria

+0

--------------------------- ------------------ -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------J'espère que cela ne brise pas les règles lol j'ai besoin d'un peu d'aide sur teamviewer. – apexmateria

+0

Oui. ce que vous avez dit fonctionnera. même si ce n'est pas une bonne façon de faire, le mysql_connect n'est plus supporté et dangereux. Passer à mysqli ou peut-être mieux pdo préparé des déclarations est très proposé [link] (http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/ –

0

Il ne l'a pas omis. Ce qu'il a fait était de quitter la base de données pour être connecté en utilisant la racine, qui n'a pas de mot de passe. L'autre connexion (qui est commentée) utilise un autre utilisateur, rajvivya_video, avec un mot de passe défini. En test, il peut être correct de se connecter à root et de le laisser sans mot de passe, mais même cela n'est pas recommandé, car il est si facile de travailler avec un utilisateur et mot de passe défini (en dehors de root).