sql >> Database teknologi >  >> RDS >> Mysql

Opret en hjemmeside med MySQL

Sådan forbinder du et websted til en MySQL-database.

Det er alt sammen meget godt at bruge MySQL Workbench til alle vores eksempler, men du spekulerer måske på, hvordan man opretter en hjemmeside med MySQL? MySQL bruges trods alt af flere websteder end noget andet databasestyringssystem.

At forespørge en MySQL-database fra din hjemmeside er ikke meget anderledes end at forespørge på den fra MySQL Workbench - du bruger de samme SQL-sætninger til begge. Men selvfølgelig er jeg sikker på, at du ikke har en lille gremlin siddende inde på din hjemmeside, der bare venter på en SQL-forespørgsel at skrive hver gang nogen besøger din hjemmeside? Når alt kommer til alt, skal du finde en gremline med et godt kendskab til SQL - ikke let at finde i disse dage!

En bedre løsning ville være at gøre, hvad de fleste andre websteder gør - brug et programmeringssprog på serversiden til at interface mellem webstedet og MySQL-serveren.

Server-side-scriptet ville først oprette forbindelse til MySQL, så kan den køre enhver forespørgsel, den har brug for.

MySQL Workbench PHP Generator

MySQL Workbench inkluderer en PHP-generator. Nå, det er ikke en komplet PHP-generator, men den vil generere nok PHP-kode til, at du kan indsætte på dit websted, så det kan oprette forbindelse til MySQL og køre dine forespørgsler.

Du kan få adgang til det fra Værktøjer | Hjælpeprogrammer menu:

Kopiér som PHP-kode (Opret forbindelse til server)

Denne mulighed genererer PHP-kode, der forbinder ved hjælp af parametrene for den forbindelse, du bruger i øjeblikket. Du kan altid erstatte parametrene med en anden forbindelse, hvis det er nødvendigt.

Hvis du klikker på denne mulighed, kopieres koden til din udklipsholder.

Her er et eksempel på den kode, som denne mulighed producerer:

$host="localhost";
$port=3306;
$socket="";
$user="root";
$password="";
$dbname="fruitshop";

$con = new mysqli($host, $user, $password, $dbname, $port, $socket)
	or die ('Could not connect to the database server' . mysqli_connect_error());

//$con->close();

Indsæt blot denne kode i PHP-dokumentet, der skal oprette forbindelse til MySQL, og opdater eventuelle felter efter behov.

Denne kode bruger MySQLi driver, hvilken driver bruges af PHP til at give en grænseflade med MySQL-databaser.

Koden giver også en fejlmeddelelse, hvis forbindelsen mislykkes.

Kopiér som PHP-kode (gentag SELECT). Resultater)

Denne mulighed giver dig mulighed for at generere PHP-kode, der indlejrer SQL-sætningen i et PHP-script. Den genererer også PHP-koden for at gentage resultatsættet (så resultaterne kan vises til webstedsbrugeren).

Igen, ved at klikke på denne mulighed kopieres koden til dit udklipsholder.

Her er et eksempel på brug af denne mulighed.

  1. Kør forespørgslen

    Kør den forespørgsel, du vil bruge, fra webstedet.

  2. Kopiér PHP-koden

    Vælg Værktøjer | Hjælpeprogrammer | Kopiér som PHP-kode (gentag SELECT Resultater)

  3. Indsæt koden

    Koden vil blive indsat på din udklipsholder. Åbn dit PHP-dokument og indsæt koden. Her er, hvordan ovenstående forespørgsel viste sig, når den blev konverteret til PHP

    $query = "SELECT FruitId, FruitName FROM Fruit";
    
    
            if ($stmt = $con->prepare($query)) {
                $stmt->execute();
                $stmt->bind_result($FruitId, $FruitName);
                while ($stmt->fetch()) {
                    //printf("%s, %s\n", $FruitId, $FruitName);
                }
                $stmt->close();
            }

Så du bliver nødt til at kombinere denne kode med den første kode. Den første kode åbner forbindelsen, den anden kode kører forespørgslen. Det er uden for rammerne af denne MySQL-tutorial at gå ind i detaljerne omkring oprettelse af PHP-websteder. Men hvis du er interesseret, har jeg skrevet en PHP-tutorial, der dækker det grundlæggende i PHP (inklusive databasedrevne websteder).

ColdFusion-databaseforbindelser

ColdFusion er et andet programmeringsmiljø på serversiden, der giver dig mulighed for at oprette forbindelse til en MySQL-server. ColdFusion gør det ekstremt nemt at forespørge i en database og udlæse resultaterne.

ColdFusion-forespørgsel og output

Her er et eksempel på brug af CFML til at forespørge en database og derefter gå gennem og udlæse resultaterne af den forespørgsel:

<cfquery datasource="dsnFruitShop" name="getFruit">
  SELECT FruitName, DateUpdated
  FROM FruitShop;
</cfquery>
<cfloop query="getFruit">
   #FruitName#
</cfloop>

ColdFusion-datakildeforbindelse

Ovenstående kode forudsætter, at en datakildeforbindelse kaldet dsnFruitShop er tidligere sat op. Dette giver forbindelsen til databasen.

ColdFusion giver dig mulighed for at oprette forbindelse til en database via dens administrationsgrænseflade (ColdFusion Administrator). Her opretter du en "datakilde"-forbindelse, som du kan henvise til i din kode (som vi gjorde i ovenstående eksempel). Når du har konfigureret datakilden, kan den bruges på enhver ColdFusion-side på den pågældende ColdFusion-server.

Her er trinene til at konfigurere en datakilde i ColdFusion:

  1. Åbn ColdFusion Administrator

    Log ind på ColdFusion-administratoren (normalt placeret på /cfide/administrator/ ) ved at bruge dit brugernavn og adgangskode.

  2. Åbn indstillingen Datakilder

    Klik på Datakilder i menuen til venstre (under DATA &SERVICES ).

  3. Tilføj en ny konfiguration

    Under Tilføj ny datakilde , indtast det navn, du vil kalde din datakilde, og driveren.

    I dette tilfælde vælger jeg MySQL 5 .

    Klik på Tilføj .

    Se nedenfor, hvis du modtager en fejl.

  4. Konfigurer og opret datakilden

    Indtast detaljerne for din MySQL-server og navnet på den database, du ønsker, at denne forbindelse skal bruges til.

    Dette er navnet på databasen på MySQL-serveren. I vores tilfælde er denne FruitShop .

    Klik på Send .

Datakildefejl?

Da du forsøgte at tilføje din datakilde, har du muligvis modtaget følgende fejl:

Den selvstændige MySQL JDBC-driver leveres ikke længere med ColdFusion. Download den, læg den i mappen cf_root/lib og genstart ColdFusion.

Dette skyldes, at driveren ikke var inkluderet i ColdFusion, da den blev sendt.

Hvis du modtager denne fejl, skal du gøre følgende:

  1. Download driveren fra MySQL-webstedet
  2. Udpak filen (dvs. .zip-fil eller .tar.gz)
  3. Flyt .jar-filen til din cf_root/lib-mappe. Her, cf_root er din ColdFusion-rodmappe. Så for eksempel, på min Mac, droppede jeg filen i /Applications/ColdFusion11/cfusion/lib/
  4. Genstart ColdFusion

Nu skulle du være i stand til at tilføje driveren via ColdFusion-administratoren som vist i de foregående trin.

De trin, der er anført på denne side, forudsætter, at du i det mindste ved, hvordan du laver en grundlæggende hjemmeside ved hjælp af det involverede scriptsprog. Hvis du gerne vil lære mere om ColdFusion, kan du se min ColdFusion-tutorial, som forklarer, hvordan du bruger ColdFusion (startende med det grundlæggende) og dækker databaseforbindelser og meget mere.


  1. Sådan tilføjes ledende nuller til et tal i MySQL

  2. Sådan opretter du udsigt i oracle

  3. Old Style Oracle Outer Join-syntaks - Hvorfor skal du finde (+) på højre side af lighedstegnet i en Left Outer join?

  4. Matching af udbud og efterspørgsel — løsninger, del 3