Differences

This shows you the differences between two versions of the page.

Link to this comparison view

u1_insert [2019-09-26 21:13]
Joakim Forsgren
u1_insert [2022-07-18 13:20]
Line 1: Line 1:
-====== Enkla INSERT och PHP ====== 
-Du har en databasanvändare på student.oedu.se som har samma login som ditt eget login och samma lösen som du fick från början.\\ 
-Din databas heter samma som ditt login. 
  
-Du kan byta mysql-lösenord själv om du vill, men jag tycker att vi väntar med det. 
- 
-Det finns något som heter phpMyAdmin (Se länk nedan). Det är ett lite trevligare gränssnitt mot databasen gjort i php. Ni ska logga in med er användare. Det ni skall börja med är att bekanta er med gränsnittet. Ni skall skapa några tabeller, lägga till fält, lägga till poster och ta bort några tabeller. Observera att ni hela tiden får SQL-kommandot för det ni gör. 
- 
-[[http://admin.student.oedu.se | admin.student.oedu.se]] - för att komma åt din databas.  
- 
-  - Skapa en tabell i phpmyadmin<code>Tips när ni skapar en tabell: 
-Döp tabellen till något på engelska i plural, använd camelcase eller underscore till  
-tabellnamn och fält namn. Vad man väljer spelar mindre roll det som är viktigt att att man är konsekvent. 
- 
-Döp ett fält till samma som tabellen men in sigular och ID på slutet, gör  
-det fältet till auto_increment, primary int. 
-mysql> desc Items; 
-+--------+----------+------+-----+---------+----------------+ 
-| Field  | Type     | Null | Key | Default | Extra          | 
-+--------+----------+------+-----+---------+----------------+ 
-| ItemID | int(11)  | NO   | PRI | NULL    | auto_increment | 
-| Item   | text     | NO       | NULL    |                | 
-| Date   | datetime | NO       | NULL    |                | 
-+--------+----------+------+-----+---------+----------------+</code> 
-  - Hur skriver man kommandot för att lägga in data i en tabell? 
-  - Hur skriver man kommandot för att ändra data i en tabell? 
-  - Hur skriver man kommandot för att ta bort data i en tabell? 
-  - Se till att förstå koden nedan, se sedan till att få den att fungera på din egen databas! 
-  - Se denna film: https://www.youtube.com/watch?v=ciNHn38EyRc OBS! Ni får bara testa på det ni skrivit själva! 
-  - Gör en [[http://student.oedu.se/~jf/code/lab2.php | gästbok ]], spara och hämta data från databasen. Tanken är att ni ska kopiera er gamla gästbok och bara byta ut hur man sparar och hämtar data. 
- 
-  
-==== Kod från genomgång ==== 
- 
-<code php> 
-<?php 
-// 1. Koppla upp sig mot databasen 
-// server, login, password, database 
-$link = mysqli_connect("localhost", "lektion", "lektion", "lektion"); 
-// 2. Säg till databasen att man vill ha ut resultatet i utf8 
-mysqli_set_charset($link, "utf8"); 
-  
-/* 
- * Lägger in data i databasen om man har tryckt på submit, 
- * laddar om sidan för att tömma POST cachen. 
- */ 
-if (!empty($_POST['Item'])) { 
-  $query="INSERT INTO `Items` ( 
-  `ItemID` , 
-  `Item` , 
-  `Date` 
-  ) 
-  VALUES ( 
-  NULL , '" . $_POST['Item'] . "', NOW( ) 
-  )"; 
-  mysqli_query($link,$query); 
-  header('location: ' . basename($_SERVER['SCRIPT_NAME'])); 
-  exit; 
-} 
-?> 
-<!DOCTYPE html> 
-<html lang="sv"> 
-<head> 
-  <meta charset="utf-8"> 
-  <link rel="stylesheet" href="style.css"> 
-  <title>Mallsida</title> 
-</head> 
-<body> 
-  <div id="page"> 
-    <form action="" method="post" > 
-    <input type="text" name="Item"> 
-    <input type="submit" name="submit" value="Spara"> 
-  </form> 
-  <h3>Mina items</h3> 
-<?php 
-// 3. Ställ en fråga 
-$query="SELECT * FROM Items ORDER BY Date DESC"; 
-$result=mysqli_query($link,$query); 
-echo mysqli_error($link); 
-// 4. Ta hand om resultatet 
-while($row=mysqli_fetch_assoc($result)){ 
-  echo '<div class="item">' .  $row['Item'] . ' (inlagt: ' . $row['DateTime'] . ')</div>'; 
-} 
-?> 
-  </div> 
-</body> 
-</html> 
-</code>