UPDATE kommandoen
UPDATE-kommandoen findes kun i en enkelt version. MySQL er meget nærtagen m.h.t. syntax, bl.a. ' ' omkring variablerne og at der ikke må være komma efter den sidste variabel.
Etablering af UPDATE program
- Kopier INSERTKopier programmet xxx_INSERT.php til xxx_UPDATE.php
- TekstrettelseRet diverse tekster i den øverste del af programmet.
- Indsæt GET
Lige over '$_POST' indsættes:
// GET start - start
if (isset ($_GET['URLpar'])) // start GET
{
$URLpar = $_GET['URLpar'];
...
// GET start - slut
|
Aller nederst (som oftest lige efter </FORM>) indsættes:
<?php
// GET slut - start
}
else // GET
{
echo "<p>Der problemer med URL-parameter i adresselinien</p>";
} // slut isset GET
// GET slut - slut
?>
|
- URL parametreOpsæt URL parametre både i afgivende program og her.
- POST navnTilpas navn i "if (isset ($_POST['xxx']))" og "<input type='submit' name='xxx' ..."
- -INSERT +UPDATESlet sql-kommandoen 'INSERT'.
Indsæt og tilpas sql-kommandoen 'UPDATE' i stedet. (Husk: ingen komma efter sidste variabel):
$query = "
UPDATE tabelnavn SET
feltnavn01 = '$variabel01_a',
feltnavn02 = '$variabel02_a',
...
feltnavn0n = '$variabel0n_a'
WHERE primær_id = $variabel_id";
$up_result = mysqli_query ($db_link, $up_query) or die (mysqli_error ($db_link));
|
- Efter "//slut POST og visning af fejlbeskeder" indsættes select-kode til hentning af den record, der skal rettes. Der indsættes "x JOIN" til de tabeller, der er tilknyttet via foreign-keys.
if($fejlbeskeder == "") {
// hent record, der skal rettes.
$query = "SELECT * FROM primærtabel
INNER JOIN sekundærtabel ON fk_PRI_id = SEK_id
...
where PRI_id = $PRI_id";
$result = mysqli_query($db_link,$query);
$row = mysqli_fetch_assoc ($result);
$variabel01 = $row[feltnavn01];
$variabel02 = $row[feltnavn02];
...
$variabel0n = $row[feltnavn0n];
}
|
For alle de felter, der skal bruges i formen, skal der foretages udtræk til variabler fra "$row['... (incl. tekstfelt til evt. drop-down menuer).
De rigtige feltnavne skal anvendes som variabelnavne.
- Drop-down menuerTilpas koden for "Input linie". Se
![x](/felles/ikoner/right.gif)
Anførselstegn (gnyffer) i tekst.
Se nærmere i afsnittet om SQL-kommandoen INSERT.
|