Avatar billede martin0688 Nybegynder
22. januar 2011 - 10:15 Der er 17 kommentarer

Connect til database ?

hey eksperten.
Jeg har et problem med at oprette forbindelse til databasen hvad skal jeg gøre?
jeg får fejlen:
    Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

og hvis jeg ændre localhost til serverens navn kommer den ikke med nogen fejl men den henter heller ikke noget.

her er koden

error_reporting(E_ALL ^ E_NOTICE);

$dbhost = 'localhost';
$dbuser ='bruger';
$dbpw = 'pass';
$forbindelse = mysql_connect($dbhost, $dbuser, $dbpw);

if(!$forbindelse){
    die ('kunne ikke forbinde til databasen:'.mysql_error());
}

$db_selected = mysql_select_db('database navn', $forbindelse);

if (!$db_selected){
    die('kan ikke bruge dbnavn: ' .mysql_error());
}

mysql_close($forbindelse);
Avatar billede HBP2 Praktikant
22. januar 2011 - 11:57 #1
det lyder mest af alt som om databasen ikke kører... har du chekket det?
Avatar billede martin0688 Nybegynder
22. januar 2011 - 13:53 #2
Har snakket med med dem og se siger de kan se den køre
Avatar billede mons Nybegynder
23. januar 2011 - 12:12 #3
$forbindelse = mysql_connect($dbhost, $dbuser, $dbpw);
ændres til:
$forbindelse = mysql_connect("$dbhost", "$dbuser", "$dbpw");

Du skal have gnyffer om dine variabler.
Avatar billede martin0688 Nybegynder
23. januar 2011 - 12:36 #4
får stadig samme problem både med localhost og servernavnet
Avatar billede mons Nybegynder
23. januar 2011 - 14:17 #5
Avatar billede showsource Seniormester
25. januar 2011 - 06:09 #6
Avatar billede showsource Seniormester
25. januar 2011 - 06:09 #7
Måske du skal forbinde via ipadressen ?
Avatar billede martin0688 Nybegynder
25. januar 2011 - 14:45 #8
showsource (indlæg 1):
min oprindelige kode var også uden.
showsource (indlæg 2):
så du vil skrive ip adressen der hvor jeg skriver server navnet?
Avatar billede showsource Seniormester
25. januar 2011 - 18:34 #9
Ja, eller
"og hvis jeg ændre localhost til serverens navn kommer den ikke med nogen fejl men den henter heller ikke noget."

den kode du viser henter jo ikke noget.
Avatar billede mons Nybegynder
25. januar 2011 - 18:50 #10
showsource
Der skal "" omkring variabler i mysql når der er tale om en "string".
Avatar billede showsource Seniormester
25. januar 2011 - 18:56 #11
mons -> Nix
Avatar billede martin0688 Nybegynder
25. januar 2011 - 19:04 #12
showsource:
koden der skal hente ser sådan ud:

<?php   
error_reporting (E_ALL &~E_NOTICE);

include('connect/connect.php');
$minquery="SELECT * FROM `tabelname` LIMIT 0 , 30 ";
$resultat=mysql_query($minquery, $forbindelse);

while ($raekke = mysql_fetch_array($resultat)) {
               
echo '<table width="840" border="1" cellpadding="0">
    <tr>
    <td colspan="2">'.$raekke['billednavn'].'</td>
    </tr>
    <tr>
    <td width="50%" class="AlineL">'.$raekke['info'].'</td>
    <td width="50%" class="AlineR">'.$raekke["dato"].'</td>
    </tr>
    </table>';
        };
?>
Avatar billede showsource Seniormester
25. januar 2011 - 19:07 #13
Prøv

$resultat = mysql_query($minquery) or die (mysql_error());
Avatar billede mons Nybegynder
25. januar 2011 - 19:51 #14
JepS!!

Se selv her
http://www.tizag.com/mysqlTutorial/mysqlconnection.php

PHP & MySQL Code:
<?php
mysql_connect("localhost", "admin", "1admin") or die(mysql_error());
echo "Connected to MySQL<br />";
?>

Nu bliver det jo pludselig en anden tråd, men det er jo vigtigt at Martin får startet rigtigt!

Eksempel:
select * from base where noget=$find
er vidt forskellig fra
select * from base where noget="$find"
Avatar billede showsource Seniormester
25. januar 2011 - 20:26 #15
$dbhost = 'localhost';
$dbuser ='bruger';
$dbpw = 'pass';
$forbindelse = mysql_connect($dbhost, $dbuser, $dbpw) or die (mysql_error());

er der ikke noget forkert i.
At du KAN bruge

$forbindelse = mysql_connect("$dbhost", "$dbuser", "$dbpw") or die (mysql_error());

er en anden snak.


define("HOST", "localhost");
define("USER", "bruger");
define("PASS", "password");

$forbindelse = mysql_connect(HOST, USER, PASS) or die (mysql_error());

er også korrekt.

Men
$forbindelse = mysql_connect("HOST", "USER", "PASS") or die (mysql_error());

vil jo fejle.
Avatar billede martin0688 Nybegynder
25. januar 2011 - 22:27 #16
hey showsource

jeg har nu prøvet
$resultat = mysql_query($minquery) or die (mysql_error());

fik stadig intet. jeg kiggede i kilekoden under siden og jeg kan se at det overhovedet ikke skriver noget som er inden for <?php  ?>?
Avatar billede showsource Seniormester
25. januar 2011 - 22:32 #17
Så engang med


$resultat = mysql_query($minquery) or die (mysql_error());

echo mysql_num_rows($resultat);
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester