Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Preciso retornar a página usando o header refresh e não estou conseguindo segue o código completo.
A linha é essa;
'.header('refresh: 3; atend_avat.php?pacie_id='.$pacie_id'.&agen_id='.$agen_id.'').'';
$pacie_id = (isset($_GET['pacie_id']));
$agen_id = (isset($_GET['agen_id']));
$id_orca = $_GET['id_orca'];
$observ = $_POST['observ'];
$valor = $_POST['valor'];
$status = $_POST['status'];
$update = $pdo->prepare("UPDATE orcamento SET observ=:observ, valor=:valor, status=:status WHERE id_orca=:id_orca");
$update->bindValue(':observ', $observ);
$update->bindValue(':valor', $valor);
$update->bindValue(':status', $status);
$update->bindValue(':id_orca', $id_orca);
$result = $update->execute();
if($result){
echo'<div class="alert alert-success">
<strong><span class="glyphicon glyphicon-info-sign"></span> Dados editado com sucesso!</strong>
</div>'.header('refresh: 3; atend_avat.php?pacie_id='.$pacie_id'.&agen_id='.$agen_id.'').'';
}else{>
1 hora atrás, Frank K Hosaka disse:
A mensagem de erro que recebi do VS Code está na variável $pacie_id, ele deveria estar assim ' . $pacie_id . ' e não do jeito que você digitou.
Para eu evitar essa confusão de aspas simples e aspas duplas, eu sempre prefiro usar as aspas duplas. Na gramática do PHP, as aspas duplas permitem usar a variável dentro do texto, assim:
<?php
$pacie_id=1;
$agen_id=1;
echo "
<div class='alert alert-success'>
<strong>
<span class='glyphicon glyphicon-info-sign'>
</span>
Dados editado com sucesso!
</strong>
</div>";
header("refresh:3;atend_avat.php?pacie_id=$pacie_id&agen_id=$agen_id");
Eu gostei do header("refresh:3"). Não sabia que era possível segurar a página atual por algum tempo para depois seguir o destino.
Frank uso sempre o refresh em cadastro tanto update
Mas no meu código não consigo fazer funcionar, sei que o problema esta no envio ou recebimento das variáveis pacie_id e agen_id mas já alterei de todo jeito e não estou conseguindo
Assim funciona
$pacie_id=1;
$agen_id=1;
Assim não funciona
$pacie_id = $_GET['pacie_id'];
$agen_id = $_GET['agen_id'];Supondo que o formulário está na página 1, a sequência é essa:
página1.php
<form action=pagina2.php>
<input name=pacie_id>
<input name=agen_id>
<input type=submit>
</form>
página2.php
<?php
$pacie_id=$_GET['pacie_id'];
$agen_id=$_GET[agen_id];
===============================
Se o formulário estiver na mesma página, o código é esse:
<?php
if(isset($_GET['pacie_id']){
$pacie_id=$_GET['pacie_id'];
$agen_id=$_GET[agen_id];} ?>
<form>
<input name=pacie_id>
<input name-agen_id>
<input type=submit>
</form>No caso eu tenho a pagina com alista de dados, a serem editados pagina 1-> vou para a pagina 2, faço a edição e quando salvo o refresh retorna para a pagina 1 nesse retorno que acontece o erro.
Nesse caso, seria melhor você publicar todos os códigos envolvidos para verificar o que exatamente está acontecendo.
A mensagem de erro que recebi do VS Code está na variável $pacie_id, ele deveria estar assim ' . $pacie_id . ' e não do jeito que você digitou.
Para eu evitar essa confusão de aspas simples e aspas duplas, eu sempre prefiro usar as aspas duplas. Na gramática do PHP, as aspas duplas permitem usar a variável dentro do texto, assim: