sql >> Databasteknik >  >> RDS >> Mysql

Skapa en webbplats med MySQL

Så här ansluter du en webbplats till en MySQL-databas.

Det går väldigt bra att använda MySQL Workbench för alla våra exempel, men du kanske undrar hur man skapar en webbplats med MySQL? MySQL används trots allt av fler webbplatser än något annat databashanteringssystem.

Att fråga efter en MySQL-databas från din webbplats skiljer sig inte mycket från att fråga efter den från MySQL Workbench - du använder samma SQL-satser för båda. Men självklart, jag är säker på att du inte har en liten gremlin som sitter inne på din webbplats som bara väntar på att en SQL-fråga ska skrivas varje gång någon besöker din webbplats? När allt kommer omkring måste du hitta en gremline med goda kunskaper i SQL – inte lätt att hitta nuförtiden!

En bättre lösning skulle vara att göra som de flesta andra webbplatser gör — använd ett programmeringsspråk på serversidan för att gränssnittet mellan webbplatsen och MySQL-servern.

Skriptet på serversidan skulle först ansluta till MySQL, då kan den köra vilken fråga den behöver.

MySQL Workbench PHP Generator

MySQL Workbench innehåller en PHP-generator. Tja, det är inte en komplett PHP-generator, men den genererar tillräckligt med PHP-kod för att du ska kunna klistra in på din webbplats så att den kan ansluta till MySQL och köra dina frågor.

Du kan komma åt det från Verktyg | Verktyg meny:

Kopiera som PHP-kod (anslut till server)

Det här alternativet genererar PHP-kod som ansluter med parametrarna för anslutningen som du använder för närvarande. Du kan alltid ersätta parametrarna med en annan anslutning om det behövs.

Om du klickar på det här alternativet kopieras helt enkelt koden till ditt urklipp.

Här är ett exempel på koden som det här alternativet producerar:

$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();

Klistra bara in den här koden i PHP-dokumentet som behöver ansluta till MySQL och uppdatera eventuella fält efter behov.

Den här koden använder MySQLi drivrutin, vilken drivrutin som används av PHP för att tillhandahålla ett gränssnitt med MySQL-databaser.

Koden ger också ett felmeddelande om anslutningen misslyckas.

Kopiera som PHP-kod (Iterera SELECT resultat)

Det här alternativet låter dig generera PHP-kod som bäddar in SQL-satsen i ett PHP-skript. Den genererar också PHP-koden för att iterera genom resultatuppsättningen (så att resultaten kan visas för webbplatsanvändaren).

Återigen, genom att klicka på det här alternativet kopieras koden till ditt urklipp.

Här är ett exempel på hur du använder det här alternativet.

  1. Kör frågan

    Kör frågan som du kommer att använda från webbplatsen.

  2. Kopiera PHP-koden

    Välj Verktyg | Verktyg | Kopiera som PHP-kod (Iterera SELECT resultat)

  3. Klistra in koden

    Koden kommer att klistras in i ditt urklipp. Öppna ditt PHP-dokument och klistra in koden. Så här såg frågan ovan ut när den konverterades till 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 skulle behöva kombinera den här koden med den första koden. Den första koden öppnar anslutningen, den andra koden kör frågan. Det ligger utanför ramen för denna MySQL-handledning att gå in på detaljerna för att skapa PHP-webbplatser. Men om du är intresserad har jag skrivit en PHP-handledning som täcker grunderna i PHP (inklusive databasdrivna webbplatser).

ColdFusion-databasanslutningar

ColdFusion är en annan programmeringsmiljö på serversidan som gör att du kan ansluta till en MySQL-server. ColdFusion gör det extremt enkelt att fråga en databas och mata ut resultaten.

ColdFusion Query &Output

Här är ett exempel på hur du använder CFML för att fråga en databas och sedan gå igenom och mata ut resultaten av den frågan:

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

ColdFusion Data Source Connection

Ovanstående kod förutsätter att en datakällanslutning kallas dsnFruitShop har ställts in tidigare. Detta ger anslutningen till databasen.

ColdFusion låter dig ansluta till en databas via dess administrationsgränssnitt (ColdFusion Administrator). Här skapar du en "datakälla"-anslutning som du kan referera till i din kod (som vi gjorde i exemplet ovan). När du har ställt in datakällan kan den användas på vilken ColdFusion-sida som helst på den ColdFusion-servern.

Här är stegen för att konfigurera en datakälla i ColdFusion:

  1. Öppna ColdFusion Administrator

    Logga in på ColdFusion Administrator (finns vanligtvis på /cfide/administrator/ ) med ditt användarnamn och lösenord.

  2. Öppna alternativet för datakällor

    Klicka på Datakällor i den vänstra menyn (under DATA &TJÄNSTER ).

  3. Lägg till en ny konfiguration

    Under Lägg till ny datakälla , ange namnet du vill kalla din datakälla och drivrutinen.

    I det här fallet väljer jag MySQL 5 .

    Klicka på Lägg till .

    Se nedan om du får ett felmeddelande.

  4. Konfigurera och skapa datakällan

    Ange uppgifterna om din MySQL-server och namnet på databasen som du vill att anslutningen ska användas för.

    Detta är namnet på databasen på MySQL-servern. I vårt fall är denna FruitShop .

    Klicka på Skicka .

Datakällafel?

När du försökte lägga till din datakälla kan du ha fått följande felmeddelande:

Den fristående MySQL JDBC-drivrutinen levereras inte längre med ColdFusion. Ladda ner den, lägg den i mappen cf_root/lib och starta om ColdFusion.

Detta beror på att drivrutinen inte ingick i ColdFusion när den skickades.

Om du får det här felet, gör följande:

  1. Ladda ner drivrutinen från MySQL-webbplatsen
  2. Extrahera filen (dvs. .zip-fil eller .tar.gz)
  3. Flytta .jar-filen till din cf_root/lib-mapp. Här, cf_root är din ColdFusion rotkatalog. Så till exempel, på min Mac, släppte jag filen i /Applications/ColdFusion11/cfusion/lib/
  4. Starta om ColdFusion

Nu bör du kunna lägga till drivrutinen via ColdFusion-administratören som visas i de föregående stegen.

Stegen som listas på den här sidan förutsätter att du åtminstone vet hur man skapar en grundläggande webbplats med hjälp av det inblandade skriptspråket. Om du vill lära dig mer om ColdFusion, se min ColdFusion-handledning som förklarar hur du använder ColdFusion (börjar med grunderna) och täcker databasanslutningar och mycket mer.


  1. MySQL-variabelt format för en NOT IN-lista med värden

  2. Sätt i från CTE

  3. Forcera indexanvändning i Oracle

  4. ORA-04091:tabellen [blah] muterar, trigger/funktion kanske inte ser den