Lo accorcio un po'. Pagina: delete.php Questa pagina viene richiamata dalla pagina edit.php che visualizza i dati della tabella news. visualizza anche una colonna dove posso eliminarli, o meglio, collegamento ipertestuale che mi manda alla pagina delete.php?id=(id)
Ed ecco la pagina:
Codice PHP:
<?php
$cookie 
$_COOKIE['accesso_effettuato'];
$id $_GET['id'];
$action $_GET['action'];

if (
$cookie == "accesso_effettuato")
    {echo 
?>
<html>
 <head>
  <title><?php echo $titolo ?> | Razers</title>
  <link rel="stylesheet" type="text/css" href="style.css" />
 </head>
 <body>
    <table border="0" align="center">
     <tr>
      <td colspan="2">
       [b]Attenzione![/b]

       Sei sicuro di voler eliminare il modulo: <?php echo $titolo ?> ?

      </td>
     </tr>
     <tr>
      <td align="center">
       <form method="post" action="edit.php" name="nuova_news">
        <input type="submit" value="No!" style="width: 100px;">
       </form>
      </td>
      <td align="center">
       <form method="post" action="delete.php?id=<?php echo $id ?>?action=delete" name="nuova_news">
        <input type="submit" value="Si!" style="width: 100px;">
       </form>
      </td>
     </tr>
   </table>
 </body>
</html>
<?php
    
}
else{
    
header("location: login.php");
    }
?>
Fin qua, non fa una piega. Se vedete nel form, c'è un "No!" e un "Si". Il primo ti riporta alla pagina edit.php il secondo in un certo senso ti refresha la pagina (ovvero ti rimanda alla pagina delete.php?id=(id)?action=delete. VIsto che non vorrei creare duemila pagine per eliminare un record avevo pensato di aggiungere una cosa del genere: (sopra)
Codice PHP:
<?php
$cookie 
$_COOKIE['accesso_effettuato'];
$id $_GET['id'];
$action $_GET['action'];

if (
$cookie == "accesso_effettuato")
    {
    if (
$action == 'delete'// se l'url è delete.php?id=(id)?action=delete, allora...
        
{
        
header("location: prova.php");
        }
    elseif (!isset(
$action)) // se l'url è delete.php?id=(id)?action=, allora...
        
{
        
header("location: errore.php");
        }
    else{ 
// se non c'è action allora esci dal primo if
        
exit;
        }
        echo 
?>
[B]IL RESTO DELLA PAGINA[/B]
<?php
    
}
else{
    
header("location: login.php");
    }
?>
Naturalmente dove leggete: header("location: prova.php"); ci metterò la connessione e la query che eliminerà il row della tabella news, però non funziona. Nel senso... mi manda sempre alla pagina prova.php NONOSTANTE l'url sia delete.php?id=(id) senza nessuna action. Dove sbaglio?

EDIT: Ho provato a cambiare header("location: prova.php"); con un'altra pagina, ma me le visualizza entrambe. (Esempio
Codice PHP:
<?php
$cookie 
$_COOKIE['accesso_effettuato'];
$id $_GET['id'];
$action $_GET['action'];

if (
$cookie == "accesso_effettuato")
    {
    if (
$action 'delete'// se l'url è delete.php?id=(id)?action=delete, allora... 
        
{echo ?>
[b]QUI CANCELLA IL ROW E POI MI DICE CHE L'HA CANCELLATO (con una pagina)[/b]
<?php
        
}
    elseif (!isset(
$action)) // se l'url è delete.php?id=(id)?action=, allora... 
        
{
        
header("location: errore.php");
        }
    else{ 
// se non c'è action nell'url allora esci dal primo if ...
        
exit;
        }
    echo 
?>
[b]PAGINA DI BASE[/b]
<?php
    
}
else{
    
header("location: login.php");
    }
?>
MI vede sia pagina di base che quella sopra!