Salvando avaliação com estrelas em php
Bom dia, estou tendo um problema com meu código. Eu pretendo fazer uma avaliação com estrelas, nesta avaliação são salvos o nome, e-mail, o numero de estrelas marcadas e um comentário. O meu código salva o nome, o e-mail e o comentário mas não salva o número de estrelas. Segue o código abaixo:
<?php
require 'Conexao.php';
if (isset($_POST['salvar'])) {
$nome = mysqli_real_escape_string($con, $_POST['nome']);
$email = mysqli_real_escape_string($con, $_POST['email']);
//$estrelas = mysqli_real_escape_string for int($con,$_POST['star']);
$comentario= mysqli_real_escape_string($con, $_POST['comentario']);
$query = "INSERT INTO new_table1 (nome, email, estrelas, comentario) VALUES ('$nome','$email','$star','$comentario')";
$query_run = mysqli_query($con, $query);
if ($query_run) {
$_SESSION['message'] = "Comentario cadastrado com sucesso";
header("Location: Index.php");
exit(0);
}
else{
$_SESSION['message'] = "Comentario não cadastrado";
header("Location : Index.php");
exit(0);
}
}
?>
Yuri
Curtidas 0
Respostas
Yuri
23/02/2023
Bom dia, estou tendo um problema com meu código. Eu pretendo fazer uma avaliação com estrelas, nesta avaliação são salvos o nome, e-mail, o numero de estrelas marcadas e um comentário. O meu código salva o nome, o e-mail e o comentário mas não salva o número de estrelas. Segue o código abaixo:
<?php
require 'Conexao.php';
if (isset($_POST['salvar'])) {
$nome = mysqli_real_escape_string($con, $_POST['nome']);
$email = mysqli_real_escape_string($con, $_POST['email']);
$comentario= mysqli_real_escape_string($con, $_POST['comentario']);
$query = "INSERT INTO new_table1 (nome, email, estrelas, comentario) VALUES ('$nome','$email','$star','$comentario')";
$query_run = mysqli_query($con, $query);
if ($query_run) {
$_SESSION['message'] = "Comentario cadastrado com sucesso";
header("Location: Index.php");
exit(0);
}
else{
$_SESSION['message'] = "Comentario não cadastrado";
header("Location : Index.php");
exit(0);
}
}
?>
Eu já havia testado outras coisas pra salvar o número de estrelas, todas essa função de salvar esta vinculada ao botão de salvar. E foi assim que eu fiz no HTML e CSS.
<?php
session_start();
include("Conexao.php");
include("salvar.php");
?>
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<link rel="stylesheet" href="//maxodn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
</head>
<?php //include('message.php'); ?>
<style>
div.stars {
width: 270px;
display: inline-block;
}
input.star { display: none; }
label.star {
float: right;
padding: 10px;
font-size: 36px;
color: #444;
transition: all .2s;
}
input.star:checked ~ label.star:before {
content: '\\2605';
color: #FD4;
transition: all .25s;
}
input.star-5:checked ~ label.star:before {
color: #FE7;
text-shadow: 0 0 20px #952;
}
input.star-1:checked ~ label.star:before { color: #F62; }
label.star:hover { transform: rotate(-15deg) scale(1.3); }
label.star:before {
content: '\\2605';
}
textarea{
height: 120px;
width: 300px;
}
</style>
<body>
<h1>Avalie aqui</h1>
<form action="?page=salvar" method="POST">
<input type="hidden" name="acao" value="cadastrar">
<div style="margin-bottom: 20px;">
<label>Nome:</label>
<input type="text" name="nome" id="nome">
</div>
<div>
<label>Email:</label>
<input type="text" name="email" id="email">
</div>
<div class="stars" name="star" id="estrelas">
<input class="star star-5" id="star-5" type="radio" name="star" value="1" />
<label class="star star-5" for="star-5"></label>
<input class="star star-4" id="star-4" type="radio" name="star" value="2" />
<label class="star star-4" for="star-4"></label>
<input class="star star-3" id="star-3" type="radio" name="star" value="3" />
<label class="star star-3" for="star-3"></label>
<input class="star star-2" id="star-2" type="radio" name="star" value="4" />
<label class="star star-2" for="star-2"></label>
<input class="star star-1" id="star-1" type="radio" name="star" value="5" />
<label class="star star-1" for="star-1"></label>
<textarea class="field" name="comentario" placeholder="Digite sua sugestão aqui"></textarea>
<br>
<br>
<br>
<button type="submit" name="salvar" class="btn">Salvar</button>
</form>
</div>
</form>
</body>
</html>
GOSTEI 0