19. juni 2003 - 17:12Der er
21 kommentarer og 1 løsning
Oprette en forbindelse til mySQL
Jeg har lige skiftet fra access til mySql, og vil gerne have nogle eksempler på hvordan man opretter en forbindelse.
Jeg har en frygtelig masse sider, så en løsning der kun består af sql-querys (?) er udelukket! Jeg skal have mulighed for at bruge rs.addnew og rs.update
# Der skabes forbindelse til databasen $conn = mysql_connect("localhost", "jemt", "mscool"); mysql_select_db("jemt"); $query = mysql_query("select user from users") or die(mysql_error()); $data = mysql_fetch_row($query);
# Der skabes forbindelse til databasen $conn = mysql_connect("localhost", "user", "pass"); # Valg af tabel mysql_select_db("tabel"); # Valg i tabel $query = mysql_query("select user from users") or die(mysql_error()); # Valg af række $data = mysql_fetch_row($query);
# udskriv data echo $data["felt"];
Hvis du vil hente data fra flere rækker i databasen, skal du bruge en while-sætning, gennemkører hele din tabel.
while($data = mysql_fetch_row($query)){ # så længde der er data i databasen, sker flg: echo $data["navn"] #Samtlige værdier i kolonnen "navn" udskrives. }
Jeg har kun prøvet en gang med rs.addnew og rs.update og det virkede ikke så jeg gik over til conn.execute("update tabel set felt = 'hej'") og insert into
I kan da ved gud også gøre det besværligt for jer selv :-)
Her er den sikre: ************************************************************* Set strConnect = Server.CreateObject("ADODB.Connection") strConnect.open("DRIVER={MySql}; SERVER=mysql-forbindelsen; DATABASE=XXXX; UID=XXXX; PWD=XXXX")
Set objRS = strConnect.Execute("SELECT * FROM kontakt WHERE id <>'" & Request.QueryString("id").Item & "'ORDER BY id DESC") osv. *************************************************************
Og lad nu være med at begynde at definere ODBC-versionen, "Port=3306; Option=131072; Stmt=;" og hvad ved jeg. Det er IKKE nødvendigt, og resulterer bare i at I ikke kan få lortet til at virke. ;-)
De eneste oplysninger I behøves er: SERVER: Oplyses af webhotel-udbyder, DATABASE: Definerer I selv ved oprettelse af databasen på jeres website, UID: Definerer I selv ved oprettelse af databasen på jeres website, PWD: Definerer I selv ved oprettelse af databasen på jeres website.
Det bliver fortalt, at du ikke kan update dit recordset.
Du skal først og fremmest lave en helt tom side, som KUN har forbindelse til din MySQL-database. Og kommer der ingen fejl-meddelelser, virker forbindelsen. Derefter laver du en helt enkel insert eller andet. Og sådan kan du bygge det op, for at fange fejlen. Det virker umiddelbart lidt "tungt", men når du ikke er så god endnu til MySQL, er det en god lære. :-)
Vent lige lidt: 1: Har du spurgt din webhotel-udbyder, hvilken connection-string du skal bruge? Det vil jeg anbefale dig at prøve, inden du opgiver helt. 2: Du kan derefter lige chekke www.mysql.com for hvilke SQL-forespørgsler du må bruge. Det kan jo netop være, at du bruger nogle forespørgsler der er "forbudte". 3: Har du lavet en helt enkel db-opkobling, og derefter foretaget en helt enkel forespørgsel? Hvis du har det, og ingen fejl fået, er du på rette spor! Så må du ikke give op! På med vanten igen, swiffer!
Du skal heller ikke sidde og omkode 145 sider. Men der er måske en enkelt fejl som der bare skal rettes? Og tak for point :-) På med vanten igen, swiffer!
Det skal jeg da, når jeg har lavet alle sidene beregnet til en accessdatabase - med rs.update og rs.addnew - Så skal jeg da også til at rette alle sammen ??
Synes godt om
Ny brugerNybegynder
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.