Modificare dati da una tabella

Fededark

Nuovo Utente
10 Mar 2012
4
0
0
Ciao a tutti

Sto facendo un programmino che permetta la gestione di una gara di atletica e mi sono trovato a dover permettere la modifica delle iscrizioni. I dati sono salvati in un database MySQL e quello che vorrei fare è stampare a video tutti i partecipanti ad una gara e fare scegliere all'utente quale modificare e in quale modo...
Un esempio vale più di mille parole:

Pinco Pallino è iscritto alla gara di salto in lungo, e viene stampata a video una tabella nella quale sono contenuti tutti i partecipanti maschi della gara di salto in lungo con la stessa età di Pinco Pallino.

CodiceNomeCognomeData di nascitaScuolaGara
156PincoPallino1/1/1111Nome scuolaSalto in lungo

ma succede che si ammala e deve essere sostituito da Tizio Caio, che però è nato in un giorno differente, oppure l'iscrizione è sbagliata e bisogna cambiare la gara, oppure ancora cancellarla del tutto.
Quindi io ho fatto una procedura in php che estrae i dati dal database e con questi riempie una tabella. L'utente a questo punto deve poter modificare o cancellare le singole righe della tabella, e ho pensato di fare in un modo del genere:

CodiceNomeCognomeData di nascitaScuolaGara
156PincoPallino1/1/1111Nome scuolaSalto in lungomodificaelimina

dove "modifica e "elimina" sono link alle rispettive pagine che eseguono l'operazione richiesta. Il mio problema è che non so come passare a queste pagine le variabili che contengono i valori (Pinco, Pallino, ecc.) con i quali interrogare il database. Come posso fare?

Grazie mille!
 

Bivio

Utente Attivo
19 Mag 2010
91
0
6
Ciao,

Supponendo che la pagina di di modifica si chiami edit.php devi aggiungere alla scritta modica
PHP:

PHP:
 href="edit.php?id=' . $var['id']


Mentre nella pagina edit.php

PHP:
$id = (int) $_GET['id'];   
$sql = "select * from tua tabella where id = $id;";
$res = mysql_query($sql);
$row = mysql_fetch_array($res)
In questo modo hai passato i dati poi puoi visualizzarli in un input di testo con un
PHP:
<?php echo $row['nome']?>
quelli che ti occorrono e che vuoi far modificare. L'unica accortezza e che devi sempre aggiungere un
PHP:
<input type="hidden" value="<?php  echo $_GET['id']?>"  name="id" />

Spero di averti fatto capire qualcosa :D
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
una piccola osservazione visto che c'è modifica e elimina
1. chiama in modo diverso le querystringhe da inviare con il get
2. l'eliminazione è sempre potenzialmente pericolosa, metti almeno una richiasta di conferma

PHP:
<a href="edit.php?mod=<?php echo $var['id'];?>">modifica</a>
<a href="edit.php?eli=<?php echo $var['id'];?>" onclick="return(confirm('attenzione stai eliminando:CONFERMA'))">elimina</a>

poi, schematicamente, nella pagina edit.php
PHP:
<?php
if(isset($_GET['mod']) || isset($_GET['eli']){
	if(isset($_GET['eli'])){
		//verifichi che il get sia un numero e se si fai la queri di delete
	}elseif(isset($_GET['mod'])){
		//verifichi che il get sia un numero se si
		//estrai con una query select i dati e riempi il form e lo visualizzi
		//come ha detto bivio puoi trasmettere dal form l'id con un campo nascosto
		echo "<form ........>";
		//.....
		echo "</form>";
	}

}else{
	//fai ritornare
}
if(isset($_POST['submit_del_form'])){
	//raccogli i vari dati compreso l'id, li verifichi e fai la query di update
}
?>
fai comunque sempre delle prove su un db di prova
 

Fededark

Nuovo Utente
10 Mar 2012
4
0
0
Grazie mille a entrambi :love:

Ora ho un ultima domanda:

il codice l'ho fatto così:

PHP:
<tr>
<form name='Modifica' action='modifica.php' method='post'>					
	<td> <center> ".$valori['Codice']." </center> </td>
	<td><input type='text' name='cognome' value='".$valori['Cognome']."'></td>
	<td><input type='text' name='nome' value='".$valori['Nome']."'></td>";
		$nascita = convertiData($valori['Data_di_nascita']);
echo	"<td><input type='text' name='nascita' value='".$nascita."'></td>
	<td>";
		$connetti=mysql_connect("localhost", "root", "");
		mysql_select_db("deggiovanni", $connetti);
		$result = mysql_query("SELECT * FROM gare ORDER BY codice", $connetti);
	        mysql_close($connetti);
		righe = mysql_num_rows($result);
		echo "<select name='sfida'>";
		for($i=0; $i<$righe; $i++){
			$gare=mysql_fetch_array($result);
			echo "<option value='".$gare['Nome_gara']."'";
			if($gare['Nome_gara'] == $gara){
				echo "selected='selected'";
			}
			echo ">".$gare['Nome_gara']."</option>";
		}
		echo "</select>
	</td>
	<td>
		<input type='hidden' name='code' value='".$valori['Codice']"'>
		<a href='modifica.php?mod=".$valori['Codice']."'>Modifica</a> 
		<a href='modifica.php?eli=".$var['Codice']."' onclick='return(confirm('Vuoi davvero eliminare questo elemento?:CONFERMA'))'>Elimina</a>
	</td>";
echo	"
</form>
<tr>

In pratica ogni riga della tabella è una form e l'utente può modificare direttamente i dati (anche se ora che ho letto le vostre risposte potrei anche modificare tutto... Ma potrebbe anche scocciarmi xD). Comunque se io volessi inviare tutti i dati della form mediante i link, come devo fare?
In pratica nel link:

<a href='modifica.php?mod=".$valori['Codice']."'>Modifica</a>

Cosa devo mettere al posto di .$valori['Codice'].?

Oppure addirittura usando dei button:

<input type="button" value="Modifica" onclick=".....">
<input type="button" value="Modifica" onclick=".....">

Così che invio a due pagine differenti, mod.php e del.php a seconda del button cliccato... il problema è sempre quello: come fare per inviare i dati della form? (Anche se vanno inviati ad una pagina diversa da quella scritta nel campo action della form... si può fare?)
 
Ultima modifica:
Discussioni simili
Autore Titolo Forum Risposte Data
W Non riesco più a modificare i dati di una tabella da phpmyadmin MySQL 0
G [PHP] MODIFICARE DATI TABELLA CONTESTUALMENTE PHP 6
K [ASP.Net] Utilizzare e modificare dati linq ASP.NET 0
L Modificare dati tabella mysql PHP 2
S Modificare dati da più tabelle MySQL 6
D Modificare dati in un campo della tabella PHP 2
C modificare dati specifici mysql con php PHP 2
Z Istruzione SQL per modificare tabella (cambiare la tipologia dati di un campo) MS Access 0
M Php+MySql: Estrarre dati da tabella e consentire all'utente di modificare un valore 'in linea' PHP 6
I Modificare dati in tabella csv da php PHP 0
C Pagina HTM connessa al DB access (non è possibile modificare/inserire dati) MS Access 0
S Come modificare i dati visualizzati di un record?? MySQL 0
I pagina per modificare dati inseriti in mysql PHP 43
I Modificare dati query PHP 6
A modificare i dati in un array PHP 3
M [cerco webmaster] sito web da modificare Offerte e Richieste di Lavoro e/o Collaborazione 0
G Come modificare un pdf in php PHP 1
napuleone modificare il valore dellascroll bar di webkit HTML e CSS 8
Shyson Modificare codice e creare link PHP 0
J Modificare panorami 360 ps 2020 Photoshop 0
napuleone modificare il contenitore di un div Javascript 2
napuleone modificare il contenitore di un div Javascript 1
D modificare questo codice per inserimento in text e non in tabella jQuery 1
C modificare sito in locale con dreamWeaver HTML e CSS 3
T Modificare ruolo utenti in fase di registrazione E-Commerce 0
M modificare un file .XML da database Sql PHP 13
S Modificare intestazione documento pdf con LO Draw Linux e Software 0
felino Radio button e Bootstrap: modificare il colore di default! HTML e CSS 1
Shyson Modificare funzione php PHP 15
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
F Modificare report di etichette di access con vba MS Access 0
D [PHP] Tabella: modificare direttamente i valori PHP 6
P [Woocommerce] Modificare il Bottone Checkout di Woocommerce in base alla categoria di prodotto E-Commerce 10
Q impossibile modificare un file ....... C/C++ 2
C [HTML] modificare la scritta della copyright HTML e CSS 2
Y [PHP] [HTML] Modificare i quadranti PHP 1
A [PHP] Modificare campo database in base alla scelta dell'utente PHP 2
V [WordPress] Come modificare link in tasto menu css WordPress 21
Y Modificare script php PHP 5
G Fullcalendar: modificare colore testo, backgroup e bordi per tutti gli eventi jQuery 3
paloppa Bootstrap.min.css modificare il file HTML e CSS 6
Merlina3377 [PHP] modificare file su form immagine thump PHP 1
G [HTML] Modificare ordine dei div in mobile responsive HTML e CSS 5
pfranco [PHP] Modificare pagina web online PHP 9
Shyson Modificare codice jQuery 0
A [Javascript] modificare il contenuto della barra indirizzi di un browser Javascript 1
asevenx modificare lista elementi togliendo l'elemento selezionato jQuery 1
Kolop "Modificare HTML" HTML e CSS 13
G Modificare navbar in base allo scroll jQuery 6
R [Photoshop] Modificare luminosità dei bordi in una foto Photoshop 2

Discussioni simili