Integrera admin.php i me6

  • Författare
  • Meddelande

Marxesso

html-kodare

  • Inlägg: 19
  • Blev medlem: 31 aug 2018, 12:43

Integrera admin.php i me6

Inlägg21 okt 2018, 22:34

Tjenare
Lyckas inte få min update att fungera när jag integrerar den i me6, om jag däremot kör vanlig phpsida så funkar den. Är det något jag har missat och isåfall kan ni guida mig i rätt väg?
Har mestadels följt Kennets kmom06


<-----process.php---->
<?php
include "config.php";
include "session/src/functions.php";
// om inte type finns, så blir de en tom sträng, om inte ID finns då blire null
$id = $_POST["id"] ?? null;
$type = $_POST["type"] ?? "";
$color = $_POST["color"] ?? "";
$amount = $_POST["amount"] ?? 0;
//action för att veta vilken knapp man trycker på
$action = $_POST["action"] ?? "";

$db = connectToDatabase($dsn);

if ($action == "Create") {
$stmt = $db->prepare("INSERT INTO fruits (Type, Color, Amount) VALUES (?, ?, ?)");
$params = [$type, $color, $amount];
$stmt->execute($params);
}

if ($action == "Update") {
$stmt = $db->prepare("UPDATE fruits SET Type = ?, Color = ?, Amount = ? WHERE Id = ?");
$params = [$type, $color, $amount, $id];
$stmt->execute($params);
}
if ($action == "Delete") {
$stmt = $db->prepare("DELETE FROM fruits WHERE id = $id");
$stmt->execute();
}

header("Location: admin.php?page=read");

<----update.php---->
<?php

include "session/src/functions.php";
include "config.php";

$db = connectToDatabase($dsn);
$fruit = $_GET["fruit"] ?? null;
$res = getOne($db, $fruit);
//print_r($res);


?>

<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Update</title>
</head>
<body>
<div class="content">
<form action="admin.php?page=process" method="POST">
<label for="id">Id: </label>
<input type="text" name="Id" id="Id" value="<?=$res["Id"]?>" readonly>
<label for="type">Type: </label>
<input type="text" name="type" id="type" value="<?=$res["Type"]?>">
<label for="color">Color: </label>
<input type="text" name="color" id="color" value="<?=$res["Color"]?>">
<label for="amount">Amount: </label>
<input type="number" name="amount" id="amount" value="<?=$res["Amount"]?>">
<input type="submit" name="action" value="Update">
</form>

</div>

</body>
</html>

<----functions.php---->

function printFruitsResultsetToHTMLTable($res)
{
//$res = $stmt->fetchAll(PDO::FETCH_ASSOC);
//echo "<pre>", print_r($res, true), "</pre>";
$rows = "";

foreach ($res as $row) {
$rows .= "<tr><td>{$row["Id"]}</td>";
$rows .= "<td>{$row["Type"]}</td>";
$rows .= "<td>{$row["Color"]}</td>";
$rows .= "<td>{$row["Amount"]}</td>";
$rows .= "<td><a href ='admin.php?page=update&fruit={$row["Id"]}'>Update</a> | <a href ='admin.php?page=delete&fruit={$row["Id"]}'>Delete</a></td></tr>";
}
return $rows;
}
function getOne($db, $fruit)
{
$params = [$fruit];
$stmt = $db->prepare("SELECT * FROM fruits WHERE Id = ?");
$stmt->execute($params);
// get the reults as an array with columns names as arary keys
return $stmt->fetch();

}

<----- read.php ----->


<?php
include "session/src/functions.php";
include "config.php";


$db = connectToDatabase($dsn);

//prepare and execute the SQL statement
$stmt = $db->prepare("SELECT * FROM fruits");
$stmt->execute();
// get the reults as an array with columns names as arary keys
$res = $stmt->fetchAll();
$rows = printFruitsResultsetToHTMLTable($res);

echo <<<EOD
<table>
<tr>

<th>Id</th>
<th>Type</th>
<th>Color</th>
<th>Amount</th>
<th>Action</th>
</tr>
$rows
</table>
EOD;
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11063
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: Integrera admin.php i me6

Inlägg22 okt 2018, 08:03

Försök avgränsa problemet till en fil.

Försök se om det är felmeddelande som visas.

Gör exit i processingsidan för att se felmeddelanden där.

Sedan försök avgränsa problemet till en kodsektion.
Använd echo för att skriva ut saker så att du vet vilken kod som exekveras och inte.
...
..:
.... /mos

Marxesso

html-kodare

  • Inlägg: 19
  • Blev medlem: 31 aug 2018, 12:43

Re: Integrera admin.php i me6

Inlägg22 okt 2018, 10:33

Fick löst det! hade blandat små och stora bokstäver, modifierade databasens tabeller i db så funkade det :)

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 22 gäster