예제 #1
0
파일: test.php 프로젝트: bthurvi/oophp
// 17.2 Att false returnerades beror på på att nått gick fel
// 18. Läste i CDatabase om ErrorCode() och ErrorInfo()
// 19. Anropa och skriv ut resultatet av ErrorCode() och ErrorInfo().
echo "ErrorCode: " . $dbh->ErrorCode();
var_dump($dbh->ErrorInfo());
// 19.1 Felkod 42000 visas
// 19.2 42000 är ett vanligt SQLSTATE-fel
// 19.3 Meddelandet säger att felet i närheten av likhetsteknen
// 20. Åtgärda felen i queryn ovan. Svara på följande frågor som kommentarer i test.php:
//20.1 Jag ändratde queryn till ett likhetstecken och sedan funkade det
// 21. Läste sedan i CDatabase om vad GetNumQueries() och GetQueries() gör.
// 22. Anropade GetNumQueries() och GetQueries()
echo "num queries: " . $dbh->GetNumQueries();
var_dump($dbh->GetQueries());
// 22.1 GetNumQueries() ger antalet frågor som körts
// 22.2 GetQueries() visar vilka frågor som körts
// 23. Läste sedan om  CDatabase::Dump()
// 24. Anropade Dump
echo "dbh dump: " . $dbh->Dump();
//24.1  Dump()skriver ut alla databasfrågor som html
// 25. Läste om CDatabase::SaveDebug()
//26. Anropade SaveDebug()
$dbh->SaveDebug();
// och skrev sedan ut sessionen
echo "SESSION: <br>";
$html = dump($_SESSION);
$html = preg_replace('#(<br */?>\\s*)+#i', '<br />', $html);
echo $html;
// 26.1 I sessionen sparas information av SaveDebug om vilka databasfrågor som körts
// 26.2 Datan sparas under nyckeln Database
// 26.3  Om man  laddar om sidan så byggs den på med mer debug-info (när savdDebug körs)
예제 #2
0
 if ($id != null) {
     //do we have a valid id?
     $sql = "SELECT * FROM oophp0710_movie";
     $res = $db->ExecuteSelectQueryAndFetchAll($sql);
     $movie = null;
     foreach ($res as $mov) {
         if ($mov->id == $id) {
             $movie = $mov;
         }
     }
     if (!$movie) {
         die("CHECK: invalid id");
     }
     $sql = 'DELETE FROM oophp0710_movie2Genre WHERE idMovie = ?';
     $db->ExecuteQuery($sql, array($id));
     $db->SaveDebug("Det raderades " . $db->RowCount() . " rader från databasen.");
     $sql2 = 'DELETE FROM oophp0710_movie2image WHERE movie_id = ?';
     $db->ExecuteQuery($sql2, array($id));
     $db->SaveDebug("Det raderades " . $db->RowCount() . " rader från databasen.");
     $sql = 'DELETE FROM oophp0710_movie WHERE id = ? LIMIT 1';
     $db->ExecuteQuery($sql, array($id));
     $db->SaveDebug("Det raderades " . $db->RowCount() . " rader från databasen.");
 }
 //var_dump($user->isAdmin());
 $disabled = '';
 $info = '';
 if (!$user->isAdmin()) {
     $disabled = "disabled";
     $info = "<p> Du kan inte radera eftersom du inte är administratör.</p>";
 }
 echo "<h1 class='center'>Välj film att radera</h1>";
예제 #3
0
파일: newmovie.php 프로젝트: bthurvi/oophp
$acronym = isset($_SESSION['user']) ? $_SESSION['user']->acronym : null;
// if user is NOT authenticated.
if ($acronym == null) {
    echo <<<EOD
<div style=" border: 1px solid #777; border-radius: 3px; padding: 10px 20px;">
    <h2 style="margin-top: 0;">Du måste vara inloggad för att få skapa ny film</h2>
    <p>Använd menyn uppe till höger på denna sida.</p>
</div>
EOD;
} else {
    // Check if form was submitted
    if ($create) {
        $sql = 'INSERT INTO oophp0710_movie (title,year) VALUES (?,?)';
        $params = array($title, $year);
        $db->ExecuteQuery($sql, $params);
        $db->SaveDebug();
        $sql2 = 'INSERT INTO oophp0710_movie2genre(idMovie,idGenre) VALUES (?,?)';
        $lastInsertId = $db->LastInsertId();
        $params2 = array($lastInsertId, 1);
        $db->ExecuteQuery($sql2, $params2);
        $db->SaveDebug();
        $sql3 = 'INSERT INTO oophp0710_movie2image(movie_id,image_id) VALUES (?,?)';
        $params3 = array($lastInsertId, 1);
        $db->ExecuteQuery($sql3, $params3);
        $db->SaveDebug();
        echo "Ny film sparad. <a href='?p=updatemovie' class='aButton'>Editera</a>";
    } else {
        //var_dump($user->isAdmin());
        $disabled = '';
        $info = '';
        if (!$user->isAdmin()) {