Effettuare i controlli di obbligatorietà lato server e, per quanto possibile, di tipo.

m4rte

Nuovo Utente
12 Apr 2014
2
0
0
salve mi trovo davanti questo esercizio (mi scuso già per il papiro):

Realizzare un'applicazione PHP per la gestione delle squadre di calcio.

Si puo' visualizzare in un elenco il nome dei giocatori e della squadra in cui gioca.

Cliccando sul nome di un giocatore si accede alla pagina di modifica nella quale si puo' modificare il nome del giocatore(*) (campo di testo) e la squadra a cui appartiene (menu a tendina). Il menu a tendina con l'elenco delle squadre viene generato dinamicamente dalla tabella 'squadra' descritta sotto. Gli elementi contrassegnati da (*) sono obbligatori.

Se la modifica viene effettuata con successo l'utente viene rediretto sulla pagina di elenco. In caso contrario l'utente viene rediretto sulla pagina stessa di modifica visualizzando un messaggio d'errore e mantenendo i valori inseriti (vanno memorizzati in variabili di sessione).

Nel caso in cui ci sia una modifica effettiva della squadra viene inserito un record nella tabella 'log' i cui campi sono: codice giocatore, codice vecchia squadra, codice nuova squadra.

Le squadre sono memorizzate nella tabella 'squadra' del DB che contiene come campi il codice della squadra ed il suo nome. I giocatori sono memorizzati nella tabella 'giocatore' del DB che contiene come campi il codice del giocatore, il suo nome ed il codice della squadra in cui gioca.

Effettuare i controlli di obbligatorietà lato server e, per quanto possibile, di tipo.
------------------------------------------------
PHP:
<?php
session_start();
//$_SESSION['stessasquadra'] è il nome della squadra iniziale del giocatore



$idg=$_POST['id'];                                           //contiene l'id del giocatore selezionato
$nome=$_POST['nuovonome'];                           // il nuovo nome scelto per il giocatore

$squadraselezionata=$_POST['squadra'];              //la nuova squadra del giocatore
echo $squadraselezionata;

$idsquadrainiziale=$_POST['idvecsq'];                  // l'id della squadra inziale del giocatore scelto
echo $idsquadrainiziale;




$dbh=new PDO('mysql: host=localhost;dbname=casa','root','');

try{
	$dbh=new PDO('mysql: host=localhost;dbname=casa','root','');
	echo "Connessione effettuata<br/>";
	}
	catch(PDOException $e){
		echo "errore";
		}
		


		
		




$cambia=$dbh->exec("UPDATE giocatori SET nomeg='$nome' WHERE idg='$idg'");

if(!$cambia) {
	echo $dbh->errorCode();
	echo "<br/>";
	echo $dbh->errorInfo();
}else {
	header("Location:elencogiocatori.php");
	}
	
	
	
if($squadraselezionata==$_SESSION['stessasquadra']){
	$_SESSION['squadra']=$squadraselezionata;
	echo " </br>";
	echo "stessa squadra";
	}
	else {
		$cambias=$dbh->exec("create table log(
									codiceg int(5) primary key,
									codicevsq int(5),
									codicensq int(20)
									)ENGINE=InnoDB;");
									
		$idsquadraselezionata=$dbh->query("SELECT ids FROM squadre WHERE nomes='$squadraselezionata'"); 		
		foreach($idsquadraselezionata as $lista){
			$idsquadra=$lista['ids'];		
		}						
								
		$cambias=$dbh->exec("INSERT INTO log(codiceg,codicevsq,codicensq) VALUES ('$idg','$idsquadrainiziale','$idsquadra')");
	 	echo $idg;
	 	echo"<br/>"; 
	 	 	echo $idsquadrainiziale;
	 	 	echo "<br/>";  
	 	 		echo $idsquadra;
	
	}
		
?>


tabella giocatori(
idg nomeg ids
1 gigi 1
2 javier 2
3 francesco 3


tabella squadre(
ids nomes
1 juventus
2 inter
3 roma


Sinceramente non ho capito proprio come fare a fare i controlli richiesti, cercando in giro ho visto qualcosa riguardante bindvalue, prepare, execute ma non ci ho capito tanto.
 
Ultima modifica di un moderatore:
Discussioni simili
Autore Titolo Forum Risposte Data
M Risolto Effettuare un redirect tramite DNS (Era: DNS Redirect) Domini 1
W Come effettuare ripetute chiamate Curl con la stessa connessione autentica [PHP] PHP 0
M Effettuare Login con dati Json Sviluppo app per Android 0
elpirata [PHP][RISOLTO] Effettuare la somma dei tempi di lavorazione PHP 3
A Funzione javascript per effettuare la slide del carosello in avanti Javascript 0
N [Javascript] Effettuare spaziatura tra caratteri Javascript 0
JackIlPazzo Effettuare scraping in javascript? Javascript 0
JackIlPazzo Espressione regolare per effettuare match con URI PHP 1
M verificare se il valore inserito nel campo è un numero ed effettuare dei calcoli Javascript 2
xone Come effettuare backup del database mysql senza exec PHP 0
G Effettuare query con data del giorno in corso PHP 3
felino [JS] Passare un array ed effettuare la somma degli elementi Javascript 2
felino [Virtuemart] Impossibile effettuare alcun modifiche dall'amministrazione Joomla 0
H Effettuare il controllo dei campi di un form e cambiare l' action dinamicamente Javascript 1
G php effettuare una connessione ssh o telnet ed inviare dei comandi PHP 3
C Effettuare il log out alla chiusura del browser PHP 3
M Non riesco ad effettuare l'upload Discussioni Varie 7
JellyBelly Effettuare GET tramite PHP PHP 2
S effettuare un controllo PHP 1
M www.mytcom.it per effettuare chiamate gratis in tutto il mondo senza limiti Presenta il tuo Sito 0
grottafelix Modifiche da effettuare: ricapitoliamo Supporto Mr.Webmaster 4
K allineare controlli in un div HTML e CSS 3
M Controlli array PHP 0
H Controlli form jQuery 0
H [risolto] Controlli form iscrizione PHP 16
X Errore nei controlli! PHP 5
F Controlli form per Registrazione utenti PHP 9
M Problema controlli MySQL ( XOR ) MySQL 1
S Controlli variabili php PHP 11
Emix Momento di lapsus... Controlli su user e pwd e campo booleano... PHP 5
P Miglioramento controlli su input PHP 57
O Controlli come parametri Javascript 3
S Eseguire controlli sul form delle foto PHP 17
P far sparire un tasto con i controlli PHP 1
T come mettere controlli su form di inserimento dati?? PHP 11
C controlli sulle registrazioni Sicurezza e Virus 0
Z problema con i controlli disattivati su IE 7 Javascript 2
M controlli radio button Javascript 2
E controlli su tabelle statiche Classic ASP 1
F me lo controlli per favore? PHP 0
Q VB6 Caricamento spezzettato matrici di controlli Programmazione 0
A controlli js Javascript 1
S Licenze?? controlli?? Flash 1
H controlli per la data Javascript 1

Discussioni simili