Cancellazione record

Stato
Chiusa ad ulteriori risposte.

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao,

Senti avrei bisogno di un tuo consiglio. Devo effettuare la cancellazione dati. ma non so come fare. L'idea che ho in mente sarebbe la seguente. Una volta che io trovo un titolo del film, ad esempio "Altrimenti ci arrabbiamo", potrebbero comparire tre tastini con i seguenti nomi:

1) Cancella

2) Modifica

3) Esci

Li vorrei a fianco di ogni film. perchè questo che ti ho fatto è solo un esempio e c'è solo un titolo così. ma se io cerco tramite l'attore, quindi digitando "Bud Spencer", lui mi tirerà fuori 7 o 8 titoli ed ad ognuno, vorrei che si visualizzassero i button suddetti. E' fattibile come cosa ??? mi puoi dare una mano ??? Se devo aprire un altro post, posso aprirlo insieme all'altro problema di cui ti ho accennato ieri ??? Grazie.
 
basta passare tramite link l'id di ogni record alle pagine di modifica o cancellazione, ad esempio;
PHP:
cancella.php?id_canc=<?php echo $row['id']; ?>
modifica.php?id_mod=<?php echo $row['id']; ?>
 
ciao
io farei così (ma non è detto che sia la soluzione migliore)

PHP:
<?php
//.....
} elseif(!EMPTY($titolofilm)){ 
     
	$result=mysql_query("SELECT * FROM  film WHERE titolofilm LIKE '%$titolofilm%' "); 
    $num_rec=mysql_num_rows($result);//da aggiungere 
    while($read=mysql_fetch_array($result)){ 
        echo $read['attoreprinc']." -"." - ".$read['titolofilm']." - ".$read['raccolta']." - ".$read['tipodvd']." - ".$read['data']; 
		echo " - <a href=\"pag_mod_del.php?cosa=M&id=".$read['id']."\">MOD</a>";
		echo " - <a href=\"pag_mod_del.php?cosa=D&id=".$read['id']."\"onclick=\"return(confirm('stai eliminando il film ".$read['titolofilm']." CONFERMA'))>DEL</a>";
		//ho messo un alert perche cancellare può essere sempre pericoloso
		echo "<br> <br>"; 
    } 
    echo $num_rec."cercato film "; 
}
//...
?>
poi nella pagina pag_mod_del.php
PHP:
<?php
$cosa=$_GET['cosa'];
$id_del_film=$_GET['id'];
if($cosa=="M"){
//estrai i dati per quell'id, li metti in un form e poi li uppi
}elseif($cosa=="D"){
//delete film con quell'id
}
//ritorno alla pagina che vuoi
?>
botta come al solito giù un poì di codice che poi vediamo
 
Ciao

Ciao,

Alla fine ieri sera ho visto il codice che mi hai postato. Ma non va, o non l'ho capito io: Ora ti posto quello che ho combinato:

Qusto è il file "search.php" modficato con le righe chei mi hai aggiunto tu.

PHP:
<?php
require_once("connetti.php");
require_once("paginaprotetta.php");
require_once("presenta.php");

$attoreprinc = mysql_real_escape_string ($_POST['attoreprinc']); //controlla i caratteri speciali
$titolofilm = mysql_real_escape_string ($_POST['titolofilm']);

if(!EMPTY($attoreprinc)){

$result=mysql_query("SELECT * FROM  film WHERE attoreprinc LIKE '%$attoreprinc%'");
while($read=mysql_fetch_array($result)){
    $num_rec = mysql_num_rows($result);
        if ($num_rec == 0) {
         echo '<font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">';
            echo "Nessun film trovato in archivio";
        } else {
            //echo $num_rec . " record trovati in archivio<br />\n";
           echo "<br> <br> <br>";
echo '<table border="2">';
           echo '<font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">';

            echo  $read['attoreprinc']  ." - ";

           echo '</font>';
          echo $read['titolofilm'];

            
  }
}

echo "<br> <br>";
echo $num_rec . " film presenti nell'archivio ";
} elseif(!EMPTY($titolofilm)){
    
    $result=mysql_query("SELECT * FROM  film WHERE titolofilm LIKE '%$titolofilm%' ");
    while($read=mysql_fetch_array($result)){
       $num_rec = mysql_num_rows($result);
  if ($num_rec == 0) {
         echo '<font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">';
echo "<br> <br>";
echo "Nessun film trovato in archivio";
        } else {
echo "<br> <br>";
         echo '<font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">';

         
        echo $read['attoreprinc']." - ".$read['raccolta']." - ".$read['titolofilm']." - ".$read['tipodvd']." - ".$read['data'];
 echo " - <a href=\"pag_mod_del.php?cosa=M&id=".$read['id']."\">Modifica.php</a>";

 //echo " - <a href=\"pag_mod_del.php?cosa=D&id=".$read['id']."\"onclick=\"return(confirm('stai eliminando il film ".$read['titolofilm']." CONFERMA'))>DEL</a>";

    }
     echo "<br> <br>";
echo '<font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">';
    echo $num_rec." film presenti nell'archivio";

}
}
?>

Questo è: il file "modifica.php+htm"

PHP:
<?php
require_once("connetti.php");
require_once("paginaprotetta.php");
require_once("presenta.php");

$attoreprinc = mysql_real_escape_string ($_POST['attoreprinc']);                      //controlla i caratteri speciali
$raccolta = mysql_real_escape_string ($_POST['raccolta']);                      //controlla i caratteri speciali
$titolofilm = mysql_real_escape_string ($_POST['titolofilm']);                      //controlla i caratteri speciali
$tipodvd = $_POST['tipodvd'];
$genere = $_POST['genere'];
$data = $_POST['data'];
?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Modifica Dati</title>
    </head>

    <body>
Attore Principale: <input type="text" name="attoreprinc"  /> <br> <br>

Raccolta: <input type="text" name="raccolta" /> <br> <br>
Titolo Film: <input type="text" name="titolofilm" /> <br> <br>

Genere: <select name="genere">
<option value="avventura">Avventura</option>
<option value="azione">Azione</option>
<option value="biografico">Biografico</option>
<option value="cartoneanimato">Cartone Animato</option>
<option value="comico">Comico</option>
<option value="commedia">Commedia</option>
<option value="documentario">Documentario</option>
<option value="drammatico">Drammatico</option>
<option value="erotico">Erotico</option>
<option value="fantascienza">Fantascienza</option>
<option value="guerra">Guerra</option>
<option value="horror">Horror</option>
<option value="hard">Hard xxx</option>
<option value="musicale">Musicale</option>
<option value="noir">Noir</option>
<option value="poliziesco">Poliziesco</option>
<option value="pulp">Pulp</option>
<option value="sentimentale">Sentimentale</option>
<option value="trhiller">Thriller</option>
<option value="storico">Storico</option>
<option value="western">Western</option>
</select>

<br> <br>

Tipo DvD: <select name="tipodvd">
<option value="originale">Originale</option>
<option value="<copiato">Copiato</option>
<option value="Tv">Tv</option>
<option value="Sky">Sky</option>
<option value="Downlodato">Downlodato</option>
</select>

<br> <br>
Data creazione dvd: <input type="text" name="data" maxlength="15" />
</font color = "black">

    <?php
        // put your code here
        ?>
    </body>
</html>


Che in teoria è uguale al file "aggiungi.php", solo che spero che abbia acquisito i dati, per poi poter cancellare o modifica. Quello ch enon mi fa per niente è la richiesta di cancellazione. cliccando sul collegamento, mi manda ad una pagina di errore dicendo che non l'ha trovata.
 
ciao
intanto una cosa, lo script che ti avevo inviato era solo per avere un'idea (es manca la connessione al db)
poi il link punta ad una pagina che io ho chiamato pag_mod_del.php, quindi devi fare una pagina con quel nome o con un altro, in tal caso devi cambiare anche nel link.
poi vediamo intanto il delete (il modifica è un po' più complesso)

pag_mod_del.php
PHP:
<?php
//dati di connessione al db
/*poi qui andrà lo script di uppaggio*/
$cosa=$_GET['cosa']; 
$id_del_film=$_GET['id']; 
if($cosa=="M"){ 
//qui metteremo la possibilità di modificare i dati del film
}elseif($cosa=="D"){ 
	$query_del="DELETE FROM film WHERE id=$id_del_film";//verifica in quanto non so come hai chiamoto in tabella film il campo id
	//prima di scrivere la mysql_query qui metti il
	var_dump($query_del);
	//cosi verifichi che stai eliminando quello che vuoi tu
	/*una volta verificato decommenta le seguenti tre righe*/
	//$ris=mysql_query($query_del);
	//echo "record eliminato";
	//echo "<meta http-equiv='Refresh' content='3; URL="search.php"'>";
	/*la riga sopra ti riporta in automatico dopo 3 secondi a search
	ti ho messo il <meta... al posto di header perche in questo caso più comodo e semplice
	cabiando il valore di content puoi aumentare o diminuire il tempo di attesa (da zero in sù)
	o se vuoi anche l'URL rimandantoni ad altra pagina
	*/
} 
?>
più tardi, tempo permettendo, ti darò un cosiglio per il form
 
Ciao

Ciao,

Ok, proverò a fare le modifiche e vedere come va. A proposito, Mi chiamo Fabio da Roma.Una curiosità, per l'id, s'intende quello che si autoincrementa ?????
 
Ultima modifica:
ciao
come ti avevo detto ti invio un suggerimento per le selct del form
ti conviene renderle dinamiche con una tabella db oppure, se non vuoi usare una tabella, potresti farti una pagina php chiamata ad es. pinco_pallo.php
in questa pagina (senza alcuna intestazione html) puoi inserire uno o più array.
PHP:
<?php
//non ti scrivo tutti i valori, ma solo alcuni ad esempio
$genere=array('avventura'=>"Avventura", 'cartoneanimato'=>"Cartone Animato",'comico'=>"Comico");//ecc.....
//poi mettere anche l'array per il tipodvd
?>
oppure di più facile leggibilità, ma più lungo da scrivere
PHP:
<?php
$genere=array();
$genere['avventura']="Avventura";
$genere['cartoneanimato']="Cartone Animato";
//ecc....
//poi mettere anche l'array per il tipodvd
?>
poi nelle pagine in cui usi le select prima includi la pagina poi crei la select.
in questo modo sei sicuro che select in pagine diverse siano sempre uguali, se devi aggiungere/modificare/eliminare una voce lo fai solo sulla pinco_pallo.php, la modifica si riflette su tutti i select.
(vedrai poi che questo sistema può essere utile in fase di modifica)


PHP:
<?php
include_once "pinco_pallo.php";//attento agli eventuali percorsi
echo "<select name=\"genere\">";
//se vuoi puoi ordinare alfabeticamente $genere=sort($genere);
// così se aggiungi in coda all'arry es. 'abbondio'=>'Abbondio' questo lo visualizzi per primo
foreach($genere as $chiave => $valore){//ciclo l'array
	echo "<option value=\"$chiave\">$valore</option>";
}
echo "</select>";
?>
analogamente per il tipodvd (senza includere nuovamente)
simile se ti facessi una tabella per il genere ed una per il tipodvd
 
Ciao

No fa un bel niente, non so dove abbia sbagliato. Ma la pagina di modifica è terminata o devo aggiungere io qualcosa ???? Perkè quando mi va su modifica, mi da schermata in bianco.
 
ciao
la pagina di elimina-modifica per ora funzia (o devrebbe funziare) solo nel caso che teu selezioni il delete, se selezioni il modifica ti da pagina bianca in quanto non ho messe il ritorno.
ma eliminare funzia?
 
Ciao

Ciao,

L'elimina non funziona. solo la pagina di modifica che mi rimanda ad una pagina bianca. Che ritorno ci dovrei mettere ????? Poi c'è un piccolo problemino.

Allora ho fatto la pagina da te consiglia di arry. Solo che tu mi hai fatto capire che tutto quello che hai scritto è in php, e la mia pagina di aggiungi dati è formato da una parte php, per richiamare le scritte ecc. ecc e dall'altra html. Ovviamente, le modifiche che ho apportato non vanno bene per html. Ti posto il codice della pagina aggiungi e derlla pagina arry.

Questa è la pagina modificata da me, chiamata "aggiungi.php+html"


PHP:
<?PHP

require_once("connetti.php");
require_once("paginaprotetta.php");
require_once("presenta.php");
require_once("arrydiselezione.php");


echo "<select name=\"genere\">"; //se vuoi puoi ordinare alfabeticamente $genere=sort($genere);  così se aggiungi in coda all'arry es. 'abbondio'=>'Abbondio' questo lo visualizzi per primo
foreach($genere as $chiave => $valore){//ciclo l'array
    echo "<option value=\"$chiave\">$valore</option>";
}
echo "</select>";
?>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Aggiunta Dati</title>
    </head>
    <body>

        <center>
     <form action="registra.php" method="POST">
</center>

 <font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">
<br> <br ><br> <br>
   

Attore Principale: <input type="text" name="attoreprinc"  /> <br> <br>
    
Raccolta: <input type="text" name="raccolta" /> <br> <br>
Titolo Film: <input type="text" name="titolofilm" /> <br> <br>

Genere: 
<br> <br>

Tipo DvD: 

<br> <br>
Data creazione dvd: <input type="text" name="data" maxlength="15" />
</font color = "black">

<center>
<input type="submit" name="submit" value="Salva" />
 <input type="button" onClick="window.location.href='benvenuto.php';" value="Menu" />
<input type="button" onClick="window.location.href='logout.php';" value="Esci" />
</center>
 </br> </br> </br> </br> </br> </br>

        
    </body>
</html>

Qua mi visualizza solo un arry ossia il genere, però viene visualizzato in alto e non dove c'è "Genere:" a fianco. E manca come puoi notare "Tipo DvD"

E questa è la pagina dell'arry chiamata "arrydiselezione.php"

<?php

//Genere Film

$genere['avventura']="Avventura";
$genere['azione']="Azione";
$genere['biografico']="Biografico";
$genere['cartoneanimato']="Cartone Animato";
$genere['comico']="Comico";
$genere['commedia']="Commedia";
$genere['documentario']="Documentario";
$genere['drammatico']="Drammatico";
$genere['erotico']="Erotico";
$genere['fantascienza']="Fantascienza";
$genere['guerra']="Guerra";
$genere['horror']="Horror";
$genere['hard']="Hard xxx";
$genere['musicale']="Musicale";
$genere['noir']="Noir";
$genere['poliziesco']="Poliziesco";
$genere['pulp']="Pulp";
$genere['sentimentale']="Sentimentale";
$genere['trhiller']="Thriller";
$genere['storico']="Storico";
$genere['western']="Western";

//TipoDvD

$tipodvd['originale"']="riginale";
$tipodvd['copiato']="Copiato";
$tipodvd['Tv']="Tv";
$tipodvd['Sky']="Sky";
$tipodvd['Downlodato']="Downlodato";
?>


Sicuramente toppo qualche cosa.
 
ciao
ecco come devi mettere il php echo"<select>ecc....
PHP:
<?php
require_once("connetti.php");
require_once("paginaprotetta.php");
require_once("presenta.php");
require_once("arrydiselezione.php");
?>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Aggiunta Dati</title>
    </head>
    <body>
        <center>
     <form action="registra.php" method="POST">
</center>
 <font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">
<br> <br ><br> <br>
Attore Principale: <input type="text" name="attoreprinc"  /> <br> <br>
Raccolta: <input type="text" name="raccolta" /> <br> <br>
Titolo Film: <input type="text" name="titolofilm" /> <br> <br>
Genere: 
<?php
echo "<select name=\"genere\">"; //*********devi mettere il php dove vuoi vederlo
foreach($genere as $chiave => $valore){//ciclo l'array
    echo "<option value=\"$chiave\">$valore</option>";
}
echo "</select>";
?>
<br> <br>
Tipo DvD: 
<?php
echo "<select name=\"tipodvd\">"; //*********devi mettere il php dove vuoi vederlo
foreach($tipodvd as $chiave => $valore){//ciclo l'array
    echo "<option value=\"$chiave\">$valore</option>";
}
echo "</select>";
?>
<br> <br>
Data creazione dvd: <input type="text" name="data" maxlength="15" />
</font color = "black">
<center>
<input type="submit" name="submit" value="Salva" />
 <input type="button" onClick="window.location.href='benvenuto.php';" value="Menu" />
<input type="button" onClick="window.location.href='logout.php';" value="Esci" />
</center>
 </br> </br> </br> </br> </br> </br>
    </body>
</html>
la pagina "arrydiselezione.php" è giusta, anche se sarebbe bene inizializzare gli array
PHP:
<?php
$genere=array();
//tutti gli arrai genere
$tipodvd=array();
//tutti gli array tipodvd
?>
per la pagina delete o modifica (modifica non funzia per ora) hai decommentato le righe che ti dicevo?

PHP:
<?php 
//dati di connessione al db 
/*poi qui andrà lo script di uppaggio*/ 
$cosa=$_GET['cosa'];  
$id_del_film=$_GET['id'];  
if($cosa=="M"){  
//qui metteremo la possibilità di modificare i dati del film 
}elseif($cosa=="D"){  
    $query_del="DELETE FROM film WHERE id=$id_del_film";//verifica in quanto non so come hai chiamoto in tabella film il campo id 
    //prima di scrivere la mysql_query qui metti il 
    var_dump($query_del); 
    //cosi verifichi che stai eliminando quello che vuoi tu 
    /*una volta verificato decommenta le seguenti tre righe*/ 
    $ris=mysql_query($query_del); 
    echo "<h1>record eliminato</h1>"; //evidenziato meglio
    echo "<meta http-equiv='Refresh' content='3; URL="search.php"'>"; 
    /*la riga sopra ti riporta in automatico dopo 3 secondi a search 
    ti ho messo il <meta... al posto di header perche in questo caso più comodo e semplice 
    cabiando il valore di content puoi aumentare o diminuire il tempo di attesa (da zero in sù) 
    o se vuoi anche l'URL rimandantoni ad altra pagina 
    */ 
}  
?>
 
Ciao

Sono disperato,

Non mi visualizza più la data. Eppure l'ho besso fuori dal php, nella pagina html. Ti posto il codice. Magari 4 occhi vedono meglio di due.

Il file è: "aggiungi.phpèhtml"

PHP:
<?PHP

require_once("connetti.php");
require_once("paginaprotetta.php");
require_once("presenta.php");
require_once("arrydiselezione.php");

echo '<font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">';
echo'<br> <br ><br> <br>';


echo 'Attore principale: <input type="text" name="attoreprinc"  /> <br> <br>';

echo 'Raccolta: <input type="text" name="raccolta"  /> <br> <br>';

echo 'Genere: ';

echo "<select name=\"genere\">"; //se vuoi puoi ordinare alfabeticamente $genere=sort($genere);  così se aggiungi in coda all'arry es. 'abbondio'=>'Abbondio' questo lo visualizzi per primo
foreach($genere as $chiave => $valore){//ciclo l'array
    echo "<option value=\"$chiave\">$valore</option>";
}



echo "</select> <br> <br>";

echo 'Tipo DvD: ';

echo "<select name=\"tipodvd\">"; //se vuoi puoi ordinare alfabeticamente $genere=sort($genere);  così se aggiungi in coda all'arry es. 'abbondio'=>'Abbondio' questo lo visualizzi per primo
foreach($tipodvd as $chiave => $valore){//ciclo l'array
    echo "<option value=\"$chiave\">$valore</option>";
}

?>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Aggiunta Dati</title>
    </head>
    <body>
<br> <br>
Data: <input type="text" name="data"> <br> <br>

        <center>
     <form action="registra.php" method="POST">
</center>

 <font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">
<br> <br ><br> <br>

<center>
<input type="submit" name="submit" value="Salva" />
 <input type="button" onClick="window.location.href='benvenuto.php';" value="Menu" />
<input type="button" onClick="window.location.href='logout.php';" value="Esci" />
</center>
 </br> </br> </br> </br> </br> </br>

        
    </body>
</html>

Yuppyyyyyyyyyyyyyy sonio strafelice, mi ero dimentica il finale, ossia questa riga eheheheheh: echo "</select> <br> <br>"; coglione che sono....... Ora vado a vedere la pagina cancellazione /modifica. Poi ti dico se ho risoloto anche quello.
 
Ciao

Ciao,

Super problemone. Come l'ho modificatanon mi memorizza na mazza. Solo la data che sta fuori dal php. Ti posto il codice, magari individui subito l'errore :(

Questo è il file "aggiungi.php+html"

PHP:
<?PHP

require_once("connetti.php");
require_once("paginaprotetta.php");
require_once("presenta.php");
require_once("arrydiselezione.php");

echo '<font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">';
echo'<br> <br ><br> <br>';


echo 'Attore principale: <input type="text" name="attoreprinc"  /> <br> <br>';

echo 'Raccolta: <input type="text" name="raccolta"  /> <br> <br>';

echo 'Titolo Film: <input type="text" name="titolofilm"  /> <br> <br>';

echo 'Genere: ';

echo "<select name=\"genere\">"; //se vuoi puoi ordinare alfabeticamente $genere=sort($genere);  così se aggiungi in coda all'arry es. 'abbondio'=>'Abbondio' questo lo visualizzi per primo
foreach($genere as $chiave => $valore){//ciclo l'array
    echo "<option value=\"$chiave\">$valore</option>";
}



echo "</select> <br> <br>";

echo 'Tipo DvD: ';

echo "<select name=\"tipodvd\">"; //se vuoi puoi ordinare alfabeticamente $genere=sort($genere);  così se aggiungi in coda all'arry es. 'abbondio'=>'Abbondio' questo lo visualizzi per primo
foreach($tipodvd as $chiave => $valore){//ciclo l'array
    echo "<option value=\"$chiave\">$valore</option>";
}
echo "</select>";
?>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Aggiunta Dati</title>
    </head>
    <body>

       
     <form action="registra.php" method="POST">
      <br> 
Data: <input type="text" name="data"> <br> <br>


 <font face="Comic Sans MS"> <body bgcolor = "#000000"> <font color="yellow">
<br> <br ><br> <br>

<center>
<input type="submit" name="submit" value="Salva" />
 <input type="button" onClick="window.location.href='benvenuto.php';" value="Menu" />
<input type="button" onClick="window.location.href='logout.php';" value="Esci" />
</center>
 </br> </br> </br> </br> </br> </br>

        
    </body>
</html>

Doppiamente coglione sono. Non avevo visto le modifiche da te apportate.
 
Ultima modifica:
Stato
Chiusa ad ulteriori risposte.

Discussioni simili