Webbserverprogrammering 1

Show sourcecode

The following files exists in this folder. Click to view.

webbsrvprg/exercises/ovning9/1/

laggatill.php
skapatabell.php
skriverut.php
tabort.php
uppdatera.php

uppdatera.php

156 lines UTF-8 Windows (CRLF)
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Update</title>
</head>

<body>
<?php
include ('../dbconnection.php');
$message null;
$getidnummer null;
$getfirstname null;
$getlastname null;
$getmobil null;
$getemail null;

if (isset(
$_POST['firstname']) && isset($_POST['lastname']) && 
  isset(
$_POST['idnummer']) && !empty($_POST['firstname']) && 
  !empty(
$_POST['lastname']) && !empty($_POST['idnummer'])) {
      
    
$idnummer $_POST['idnummer'];
    
$firstname $_POST['firstname'];
    
$lastname $_POST['lastname'];
    
$mobil = isset($_POST['mobil']) ? $_POST['mobil'] : 0;
    
$email $_POST['email'];
    
    try {    
        
# prepare
        
$sql "UPDATE kompisar SET firstname=?, lastname=?, mobil=?, email=?
          WHERE idnummer=?"
;
        
$stmt $dbconn->prepare($sql);
        
# the data we want to insert
        
$data = array($firstname$lastname$mobil$email$idnummer);
        
# execute width array-parameter
        
$stmt->execute($data);
            
        
$message .= "<br />Record updated successfully.<br />";
        
// clear form from info
        
$_GET['idnummer'] = null;
    }
    catch(
PDOException $e)
        {
        
$message .= $sql "<br>" $e->getMessage();
    }
} else {
    
$message .= "<br />Först väljer du en post. 
      Sen måste du fylla i minst förnamn och efternamn!<br /><br />"
;
}

if (isset(
$_GET['idnummer']) && !empty($_GET['idnummer']) ) {
    
$idnummer $_GET['idnummer'];
    
    try {    
        
# prepare
        
$sql "SELECT * FROM kompisar WHERE idnummer=?";
        
$stmt $dbconn->prepare($sql);
        
# the data we want to insert
        
$data = array($idnummer);
        
# execute width array-parameter
        
$stmt->execute($data);
            
        
$res $stmt->fetch(PDO::FETCH_ASSOC);
        
$getidnummer htmlentities($res['idnummer']);
        
$getfirstname htmlentities($res['firstname']);
        
$getlastname htmlentities($res['lastname']);
        
$getmobil htmlentities($res['mobil']);
        
$getemail htmlentities($res['email']);
        
        
$message .= "<br />Record was selected successfully.<br />";
    }
    catch(
PDOException $e)
        {
        
$message .= $sql "<br>" $e->getMessage();
    }
} else {

    
$message .= "<br />Välj en ny post att uppdatera.<br /><br />";

}

echo 
$message;

    
?>
        <form method="post" action=""> 
        <table> 
            <tr>
            <td>Förnamn*:</td>
            <td>
                <input type="text" name="firstname" size="40" maxlength="40" 
                  value="<?= $getfirstname?>">
            </td>
            </tr> 
            <tr>
            <td>Efternamn*:</td>
            <td>
                <input type="text" name="lastname" size="40" maxlength="40" 
                  value="<?= $getlastname?>">
            </td>
            </tr> 
            <tr>
                <td>Mobil:</td>
                <td>
                    <input type="text" name="mobil" size="20" maxlength="20" 
                    value="<?= $getmobil?>">
                </td>
            </tr> 
            <tr>
            <td>Epost*:</td>
            <td>
                <input type="text" name="email" size="40" maxlength="40" 
                  value="<?= $getemail?>">
            </td>
            </tr> 
            <tr>
            <td>* = obligatoriskt</td>
            <td>
                <button type="submit">Lägg till</button>
                <input type="hidden" name="idnummer" value="<?= $getidnummer?>">
            </td>
            </tr> 
        </table> 
    </form>
<?php    
    
// Ouput table with all posts
    /*** The SQL SELECT statement ***/
    
$sql "SELECT * FROM kompisar";
    
$stmt $dbconn->prepare($sql);
    
// fetch width column names, create a table
    
$data = array();  
    
$stmt->execute($data);
    
$output "<table><caption>En ostylad tabell!</caption>";
    while (
$res $stmt->fetch(PDO::FETCH_ASSOC)) {
        
$idnummerx htmlentities($res['idnummer']);
        
$first htmlentities($res['firstname']);
        
$last htmlentities($res['lastname']);
        
$mobil htmlentities($res['mobil']);
        
$email htmlentities($res['email']);
        
        
$output .= "<tr>".
            
"<td><a href='?idnummer=$idnummerx'>$idnummerx</a></td>".
            
"<td>$first</td>".
            
"<td>$last</td>".
            
"<td>$mobil</td>".
            
"<td>$email</td>".
        
"</tr>";
        
    }
    
$output .= "</table>";
    echo 
"$output";

    
$dbconn null;
?>
  <a href="../ovn_sql1.php">Tillbaks till meny</a>
</body>
</html>