fixed edit class
This commit is contained in:
parent
1e9fa25639
commit
3ed815e2e3
@ -1,35 +1,65 @@
|
||||
<?php
|
||||
include('include/headscript.php');
|
||||
<?php include('include/headscript.php');
|
||||
|
||||
// Connessione al database
|
||||
$conn = new mysqli($servername, $username, $password, $database);
|
||||
|
||||
// Verifica se l'ID della classe è passato tramite GET
|
||||
// Verifica se l'ID della classe è stato passato correttamente tramite GET
|
||||
if (isset($_GET['idyogaclass']) && is_numeric($_GET['idyogaclass'])) {
|
||||
$idyogaclass = intval($_GET['idyogaclass']);
|
||||
} else {
|
||||
// Se non c'è un ID valido, reindirizza alla pagina delle classi
|
||||
header("Location: yogaclass.php");
|
||||
exit;
|
||||
}
|
||||
|
||||
// Recupera i dati della classe dal database
|
||||
// Recupera i dati della classe corrente dal database
|
||||
$conn = new mysqli($servername, $username, $password, $database);
|
||||
$query = $conn->prepare("SELECT * FROM yogaclass WHERE idyogaclass = ?");
|
||||
$query->bind_param("i", $idyogaclass);
|
||||
$query->execute();
|
||||
$result = $query->get_result();
|
||||
$classData = $result->fetch_assoc();
|
||||
|
||||
if (!$classData) {
|
||||
header("Location: yogaclass.php");
|
||||
exit;
|
||||
}
|
||||
// Se il form è stato inviato, aggiorna i dati
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
$nameyogaclass = $_POST['nameyogaclass'];
|
||||
$idclasscategory = $_POST['idclasscategory'];
|
||||
$descriptionyogaclass = $_POST['descriptionyogaclass'];
|
||||
$productcode = $_POST['productcode'];
|
||||
|
||||
// Variabili per popolare il form
|
||||
$nameyogaclass = $classData['nameyogaclass'];
|
||||
$descriptionyogaclass = $classData['descriptionyogaclass'];
|
||||
$idclasscategory = $classData['idclasscategory'];
|
||||
$imgyogaclass = $classData['imgyogaclass'];
|
||||
$productcode = $classData['productcode'];
|
||||
// Se è stata caricata una nuova immagine
|
||||
if (!empty($_FILES['imgyogaclass']['name'])) {
|
||||
$img_name = $_FILES['imgyogaclass']['name'];
|
||||
$img_tmp_name = $_FILES['imgyogaclass']['tmp_name'];
|
||||
$ext = pathinfo($img_name, PATHINFO_EXTENSION);
|
||||
$new_img_name = time() . '-' . $idyogaclass . '.' . $ext;
|
||||
$upload_path = 'uploadphotoclass/' . $new_img_name;
|
||||
|
||||
// Elimina l'immagine precedente
|
||||
if (!empty($classData['imgyogaclass']) && file_exists('uploadphotoclass/' . $classData['imgyogaclass'])) {
|
||||
unlink('uploadphotoclass/' . $classData['imgyogaclass']);
|
||||
}
|
||||
|
||||
// Carica la nuova immagine
|
||||
move_uploaded_file($img_tmp_name, $upload_path);
|
||||
} else {
|
||||
// Mantieni l'immagine esistente se non viene caricata una nuova
|
||||
$new_img_name = $_POST['existing_img'];
|
||||
}
|
||||
|
||||
// Aggiorna i dati della classe nel database
|
||||
$update_query = $conn->prepare("
|
||||
UPDATE yogaclass
|
||||
SET nameyogaclass = ?, idclasscategory = ?, descriptionyogaclass = ?, imgyogaclass = ?, productcode = ?
|
||||
WHERE idyogaclass = ?
|
||||
");
|
||||
$update_query->bind_param("sisssi", $nameyogaclass, $idclasscategory, $descriptionyogaclass, $new_img_name, $productcode, $idyogaclass);
|
||||
|
||||
if ($update_query->execute()) {
|
||||
// Reindirizza alla pagina delle classi con un messaggio di successo
|
||||
header("Location: yogaclass.php?message=class_updated");
|
||||
exit;
|
||||
} else {
|
||||
echo "Errore durante l'aggiornamento della classe.";
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
@ -37,77 +67,81 @@ $productcode = $classData['productcode'];
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Edit Class</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<title>Modifica Classe</title>
|
||||
<?php include('include/seo.php'); ?>
|
||||
<link href="assets/css/bootstrap.min.css" rel="stylesheet" type="text/css">
|
||||
<link href="assets/css/icons.css" rel="stylesheet" type="text/css">
|
||||
<link href="assets/css/style.css" rel="stylesheet" type="text/css">
|
||||
<script src="https://cdn.ckeditor.com/ckeditor5/35.0.1/classic/ckeditor.js"></script>
|
||||
</head>
|
||||
|
||||
<body class="fixed-left">
|
||||
|
||||
<div id="wrapper">
|
||||
|
||||
<?php include('include/navigationbar.php'); ?>
|
||||
|
||||
<div class="content-page">
|
||||
<div class="content">
|
||||
<?php include('include/topbar.php'); ?>
|
||||
|
||||
<div class="page-content-wrapper ">
|
||||
<div class="page-content-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="page-title-box">
|
||||
<div class="btn-group float-right">
|
||||
<ol class="breadcrumb hide-phone p-0 m-0">
|
||||
<li class="breadcrumb-item"><a href="#">YogiWhere</a></li>
|
||||
<li class="breadcrumb-item active">Modifica Classe</li>
|
||||
</ol>
|
||||
</div>
|
||||
<h4 class="page-title">Modifica Classe</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Form di modifica della classe -->
|
||||
<!-- Form per modificare la classe -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="card card-body">
|
||||
<form method="POST" action="update_class.php" enctype="multipart/form-data">
|
||||
<input type="hidden" name="idyogaclass" value="<?php echo $idyogaclass; ?>">
|
||||
|
||||
<h4 class="card-title font-20 mt-0">Modifica Classe</h4>
|
||||
<form method="POST" enctype="multipart/form-data">
|
||||
<div class="form-group">
|
||||
<label for="nameyogaclass">Nome Classe</label>
|
||||
<input type="text" class="form-control" id="nameyogaclass" name="nameyogaclass" value="<?php echo htmlspecialchars($nameyogaclass); ?>" required>
|
||||
<input type="text" class="form-control" id="nameyogaclass" name="nameyogaclass" value="<?php echo htmlspecialchars($classData['nameyogaclass']); ?>" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="idclasscategory">Categoria Classe</label>
|
||||
<select class="form-control" id="idclasscategory" name="idclasscategory" required>
|
||||
<?php
|
||||
// Recupera le categorie esistenti
|
||||
$query_categories = $conn->query("SELECT * FROM classcategory");
|
||||
while ($row = $query_categories->fetch_assoc()) {
|
||||
$selected = $row['idclasscategory'] == $idclasscategory ? 'selected' : '';
|
||||
$selected = ($row['idclasscategory'] == $classData['idclasscategory']) ? 'selected' : '';
|
||||
echo '<option value="' . $row['idclasscategory'] . '" ' . $selected . '>' . $row['namecategory'] . '</option>';
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="descriptionyogaclass">Descrizione Classe</label>
|
||||
<textarea class="form-control" id="descriptionyogaclass" name="descriptionyogaclass" rows="10"><?php echo htmlspecialchars($descriptionyogaclass); ?></textarea>
|
||||
<textarea class="form-control" id="descriptionyogaclass" name="descriptionyogaclass" rows="10"><?php echo htmlspecialchars($classData['descriptionyogaclass']); ?></textarea>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="imgyogaclass">Immagine Classe</label>
|
||||
<?php if (!empty($imgyogaclass)): ?>
|
||||
<img src="uploadphotoclass/<?php echo $imgyogaclass; ?>" alt="Immagine Classe" width="100" class="mb-3">
|
||||
<?php endif; ?>
|
||||
<input type="file" class="form-control" id="imgyogaclass" name="imgyogaclass">
|
||||
<input type="hidden" name="existing_img" value="<?php echo $classData['imgyogaclass']; ?>">
|
||||
<?php if (!empty($classData['imgyogaclass'])): ?>
|
||||
<img src="uploadphotoclass/<?php echo $classData['imgyogaclass']; ?>" alt="Immagine Classe" style="width: 150px; height: auto;">
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="productcode">Codice Prodotto (Opzionale)</label>
|
||||
<input type="text" class="form-control" id="productcode" name="productcode" value="<?php echo htmlspecialchars($productcode); ?>">
|
||||
<input type="text" class="form-control" id="productcode" name="productcode" value="<?php echo htmlspecialchars($classData['productcode']); ?>">
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-primary">Salva Modifiche</button>
|
||||
<a href="yogaclass.php" class="btn btn-secondary">Annulla</a>
|
||||
</form>
|
||||
@ -115,14 +149,15 @@ $productcode = $classData['productcode'];
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div><!-- container -->
|
||||
</div><!-- page-content-wrapper -->
|
||||
</div><!-- content -->
|
||||
</div><!-- content-page -->
|
||||
</div><!-- wrapper -->
|
||||
</div> <!-- container-fluid -->
|
||||
</div> <!-- page-content-wrapper -->
|
||||
</div> <!-- content -->
|
||||
|
||||
<?php include('include/footer.php'); ?>
|
||||
</div> <!-- content-page -->
|
||||
</div> <!-- wrapper -->
|
||||
|
||||
<!-- Includi CKEditor -->
|
||||
<script src="https://cdn.ckeditor.com/ckeditor5/35.0.1/classic/ckeditor.js"></script>
|
||||
<script>
|
||||
ClassicEditor
|
||||
.create(document.querySelector('#descriptionyogaclass'))
|
||||
|
||||
BIN
public/schoolarea/uploadphotoclass/1727292728-2.jpg
Normal file
BIN
public/schoolarea/uploadphotoclass/1727292728-2.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 229 KiB |
BIN
public/schoolarea/uploadphotoclass/1727292763-1.png
Normal file
BIN
public/schoolarea/uploadphotoclass/1727292763-1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 478 KiB |
@ -210,28 +210,6 @@ $longitudedb = $schoolData['longitude'];
|
||||
|
||||
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-12">
|
||||
<div class="card card-body">
|
||||
<h4 class="card-title font-20 mt-0"><?php echo $settingtitle; ?></h4>
|
||||
<p class="font-13 text-muted"><?php echo $settinginstruction; ?></p>
|
||||
<!-- Area di caricamento -->
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Tabella per visualizzare le immagini caricate -->
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user