Skapa demo data - typ extrauppgift

Denna uppgift går ut på att du ska skapa lite demo-data… Det kanske inte blir den bästa lösning, möjligen går vi lite omvägar men syftet är att ni ska lära er lite mer om hur man skapar tabeller och lägger in och hämtar data från en databas.

Ni kommer att bli tvungna att göra några deluppgifter innan ni kommer till slutmålet, en sida där man vid varje omladdning kommer att få data, tex företag + några personer etc. Har kan ni se ett ex på ett färdigt resultat Random data

Skap tabeller och insert + lite PHP

1. Nu ska utgå i från filerna som ligger på min användare i katalogen ~jf/Public/operativsystem/text_files. Ni ska skapa en tabell i databasen per fil och ni kan ska lägga till ett “Prefix” dd_ (Demo Data) till varje tabell. Alltså filen som heter projects.txt skulle kunna få tabell namnet dd_projects. Skriv ett program som hämtar upp alla filer och för varje fil skapar en tabell i databasen och lägger in all data som finns i filen i databasen. OBS! varje tabell ska få ett fält som heter id och är “auto increment primary key”.

2. Filer där texten innehåller ett ; ska man dela upp i det antal fält som finns och namnge dessa med första raden i filen, sen när man lägger in data i tabellen ska man hoppa över första raden. tex filen zip_codes_with_city.txt. Radera dina tabeller och fixa till programmet och kör det igen så att alla tabeller skapas korrekt.

3. Skapa en tabell via phpAdmin som heter first_names. Den ska bestå av två fält ett där man sparar namnet och ett där man sparar kön, i version 1 så finns bara kvinna och man. Ni ska sedan skriva 3 st SQL-frågor som 1 tömmer tabellen forenames och 2 och 3 fyller den med data som hämtas från tabellerna females och males. Här ska ni använda INSERT INTO table1 ( column1 )SELECT col1 FROM table2..

Slumpa fram data

Ni kan redan från börja göra er sida där ni lägger till mer slumpad info allt eftersom ni bygger ny info.

4. Ni ska skriva klart följande funktioner själv (alltså inte googla rätt på något och klistra in), ni kan ta hjälp av det som står om personnummer på https://sv.wikipedia.org/wiki/Personnummer_i_Sverige:

<?php
/**
 * Return a correct random date (18 to 65 years back from now) in format yyyy-mm-dd.
 *
 * @return string
 *   The random date.
 */
function get_date() {
  $date = '1966-06-06';
  return $date;
}
 
/**
 * Return a correct Swedish social security number (personnummer).
 *
 * @param string $date
 *   Date for "personnummer".
 * @param string $gender
 *   The gender of the person.
 *
 * @return string
 *   The random pnr.
 */
function get_pnr(string $date, string $gender) {
  $pnr = '19660606-7483';
  return $pnr;
}
 
/**
 * Return the age of a person.
 *
 * @param string $pnr
 *   A social security number (personnummer).
 *
 * @return string
 *   The age.
 */
function get_age(string $pnr) {
  return '66';
}

5. Skriv följande funktioner, dessa ska hämta data från dina tabeller.

/**
 * Get random name.
 *
 * @param string $gender
 *   Gender.
 *
 * @return string
 *   Return the random first and last name.
 */
function get_name(string $gender) {
  global $_link;
  $query = "SELECT * FROM..." . $gender . "...";
  $result = mysqli_query($_link, $query);
  // ...
  return $name;
}
 
/**
 * Get random address.
 *
 *   Street + number of the house.
 *
 * @return string
 *   Return the address.
 */
function get_street_address() {
  return 'Morkullevägen 66';
}
 
/**
 * Get random zip code with city.
 *
 * @return string
 *   Return random zip + city.
 */
function get_zip_code_with_city() {
  return '89140 Örnsköldsvik';
}
 
/**
 * Get random profession.
 *
 * @return string
 *   Return profession.
 */
function get_profession() {
  return 'Automationstekniker';
}

6. Gör funktioner för att hämta ut slumpat företagsnamn, organisationsnummer, SNI-kod. Kolla vad som gäller för organisationsnummer https://sv.wikipedia.org/wiki/Organisationsnummer. För att få fram ett slumpat företagsnamn får ni göra lite som ni vill…Vi får väl se hur bra namn ni lyckas generera, det vore bra om namnen slumpas utifrån delsträngar på något klurigt sätt, att hämta namn från en lista känns lite tråkigt tycker jag.

7. Komplettera med fler saker t ex e-post, lösenord, skostorlek, vikt, längd… Ja hitta på lite vad som helst.