correction Ajax

Créé en 2018 et modifié le 13 Nov 2020

Créé en 2018 et modifié le 13 Nov 2020

partie 1

<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
</head>
<body>
<button class="btn btn-primary" id="btn">Valider</button>
<div id="result"></div>
<script src="https://code.jquery.com/jquery-3.3.1.min.js" crossorigin="anonymous"></script>
<script src="ajax1.js"></script>
</body>
</html>
$( document ).ready(function() {
//click sur l'id btn
$('#btn').click(function(){ 
	$.ajax({       
	type: "GET",
	//appel de index.php sur le serveur web
	url: "http://localhost/ajax1.php",
		success: function(data){ 
		$("#result").html(data);
		}
	});
});
});
<?php 
echo "bonjour Ajax";
?>

partie 2 et 3 sans regex

<?php session_start();?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-9gVQ4dYFwwWSjIDZnLEWnxCjeSWFphJiwGPXr1jddIhOegiu1FwO5qRGvFXOdJZ4" crossorigin="anonymous">

</head>
<body >
<div class="container">

<label for="example-text-input" class=" col-md-8 col-lg-6 col-form-label">Email</label>
<div class="col-md-8 col-lg-6">
<input class="form-control" required="required" type="email" value="" name="email" id="email">
</div>
<br>
<div class="col-md-8 col-lg-6">
<button class="btn btn-danger btn-lg" id="btn" type="submit">Valider</button>
</div>
<br>
<div class="col-md-8 col-lg-6" id="result">
</div>
</div>

<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js" integrity="sha384-uefMccjFJAIv6A+rW+L4AHf99KvxDjWSu1z9VI8SKNVmz4sk7buKt/6v9KI65qnm" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.bundle.min.js" integrity="sha384-lZmvU/TzxoIQIOD9yQDEpvxp6wEU32Fy0ckUgOH4EIlMOCdR823rg4+3gWRwnX1M" crossorigin="anonymous"></script>
<script
src="https://code.jquery.com/jquery-3.3.1.min.js"
integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
crossorigin="anonymous"></script>

<script>
$( document ).ready(function() {
//click sur l'id btn
$('#btn').click(function(){
var email=$("#email").val();
alert(email);

$.ajax({
type: "GET",
url: "http://localhost/ajax2.php?email="+email,
success: function(data){
$("#result").html(data);
},
error:function(httpObj, textStatus){
if(httpObj.status==401){
alert("mauvais email");
}
[...]

correction objet en PHP

<?php

 abstract class Personne{
 protected $nom;
 protected $adresse;

	public function __construct(){

	}
	public function getNom(){
		return $this->nom;
	}
	public function getAdresse(){
		return $this->nom;
	}
	public function setNom($leNom){
		$this->nom=$leNom;
	}
	public function setAdresse($lAdresse){
		$this->nom=$lAdresse;
	}

	public  abstract function creationCompte();

	public function __toString(){
	 echo "waza";
	}

}

class Client extends Personne{

	public $monFournisseur;

	private $montant;
	private $reduction;
 	public  function creationCompte(){}

	
	public function __construct($leNom="ajjj"){
		parent::__construct(); //super();
		//$this->setNom($leNom);
		$this->nom=$leNom;
	}
	public function getMontant(){
		return $this->montant;
	}
	public function getReduction(){
		return $this->nom;
	}
	public function setMontant($leMontant){
		$this->montant=$leMontant;
	}
	public function setReduction($laReduction){
		$this->reduction=$laReduction;
	}
}

final class Fournisseur extends Personne{

	private $categorie;

	public function getCategorie(){
		return $this->categorie;
	}
	public function setCategorie(string $laCategorie){
		$this->categorie=$laCategorie;
	}

	public  function creationCompte(){}

	public function __construct($leNom="bb"){
		parent::__construct();
		//$this->setNom($leNom);
		$this->nom=$leNom;
		Fournisseur::$nbF++;
	}


	public static $nbF=0;
}

echo Fournisseur::$nbF;
$f1=new Fournisseur();
$f1->setCategorie("super étudiant");
echo $f1->getCategorie();

$cli1=new Client();
$cli2=new Client();

$cli1->monFournisseur=$f1;
$cli2->monFournisseur=$f1;

echo $cli1->monFournisseur->getNom();
echo $cli2->monFournisseur->getNom();
//$maPersonne->setNom("lulu");
//echo $maPersonne->getNom();
//$maPersonne= new Personne();
//$maPersonne->setNom("toto");
//echo $maPersonne->getNom();
//echo $maPersonne;

?>

 

correction dinojboc

Formulaire

<!DOCTYPE html>
<html>
<head>
          <meta charset="utf-8" />
          <title>DinoJboc</title>
          <link rel="stylesheet" href="DinoJBoc.css">
</head>
<body>
<form method="post" id="frmConnection" action="DinoJBoc.php">
          
<label for="nom"> Nom du dino :</label>
<input type="text" name="nom" id="nom" required/>
          <br/>
<label for="poids"> Poids du dino :</label>
<input type="number" name="poids" id="poids" required />
          <br/>
<label for="couleur"> Couleur du dino :</label>
<input type="text" name="couleur" id="couleur" required />
          <br/>
<label for="birthDate"> Date de naissance du dino :</label>
<input type="text" name="birthDate" id="birthDate" required />
          <br/>
<label for="birthDate"> Entrez une URL de l'image du dino :</label>
<input type="text" name="image" id="image" />
          <br/>
<input type="submit" name="cmd" id="cmd" value="Créer" />
</form>

Récupération

<?php session_start(); 

class Dinosaure {
public $nom;
public $poids;
[...]

correction VBA

Question 1

Sub nomPrenom()
Dim prenom As String, nom As String
prenom = InputBox("prenom")
nom = InputBox("nom")
MsgBox ("tu es" + prenom + nom)
End Sub

Question 2

Sub note()
Dim note As Double
Dim st As String
note = InputBox("note")
note = note * 1.1
st = CStr(note)
MsgBox ("ta note est" + st)
End Sub
Sub t()

Question 3

Dim t As Double
t = InputBox("Quelle est la temperature ?")

If t > 200 Then
MsgBox ("extrêmement chaud")
ElseIf 200 > t And t > 40 Then
MsgBox ("élevé")
ElseIf 40 > t And t > 20 Then
MsgBox ("correct")
ElseIf 20 >= t And t > 0 Then
MsgBox ("correct")
Else
MsgBox ("Beaucoup trop froid")
End If
End Sub

 

Function com(montant As Double)
com As Double
com = 20
If montant >= 5000 Then
com = 5000 * 0.012 + (montant - 5000) * 0.009
Else
com = montant * 0.012
End If
If com < 20 Then
com = 20
End If
MsgBox com

End Function

Function age(datee As Date)
Dim a As Integer
age [...]

correction encapsulation

package TD7;
/** Classe Chemise
@author M. Frébourg
@version 2013
*/
public class Chemise extends Vetement{

/** Donne la longueur d'une manche */
private int longueurManche;
/** Donne la taille du cou */
private int couTaille;

/** constructeur chemise
@param libelle le libelle
@param couleur la couleur
@param marque la marque
@param collection la collection
@param a le composant
@param longueurManche longueur de manche
@param couTaille taille du cou
@param prix le prix
@see Composant

*/
public Chemise(String libelle, String couleur, String marque, String collection, Composant a,
int longueurManche, int couTaille, double prix){
super( libelle, couleur, marque, collection, a, prix);
this.longueurManche=longueurManche;
this.couTaille=couTaille;
}

/** création de chaine de caractere de l'objet chemise
@return la chaine de caractere de la Chemise
*/
public String toString(){
return super.toString()+ this.getLongueurManche()+ " "+this.getCouTaille() ;
}

/**
* @return the longueurManche
*/
public int getLongueurManche() {
return longueurManche;
}

/**
* @param longueurManche the longueurManche to set
*/
public void setLongueurManche(int longueurManche) {
this.longueurManche = longueurManche;
[...]

correction les exceptions

// ------------------class dateNaissException
class dateNaissExeption extends Exception {
public dateNaissExeption (){

}

}

//---------------- autre class
import java.text.SimpleDateFormat;
import java.util.Date;

public class Personne {
private String nom;
private String prenom;
private Date dateNaiss;
private Date dateJour;

public Personne(String n,String p,Date dn,Date dj) throws dateNaissExeption{
this.nom=n;
this.prenom=p;
this.dateNaiss=dn;
this.dateJour=dj;
if (dateNaiss.compareTo(dateJour)>0){
throw new dateNaissExeption() ;
}
}
}

//---------------------main
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;

public class Test {
public static void main(String[] args) {

Date dateNaiss=null;
Date dateJour=null;
SimpleDateFormat simpleDateFormat =new SimpleDateFormat("dd/MM/yyyy");
String dateT1="14/05/2015";
String dateT2="24/09/2014";
try{
[...]

correction Les tests unitaires

 //http://junit.sourceforge.net/junit3.8.1/javadoc/junit/framework/Assert.html
 @Test
 public final void testGenUid() {
   	GestAjoutUsers gtest= new GestAjoutUsers();
	assertEquals("tititata",gtest.genUid("titi","tata"));
	assertEquals("tititata",gtest.genUid("titi","TATA"));
	assertEquals("tititata",gtest.genUid("TITI","tata"));
	assertEquals("tititata",gtest.genUid("TITI","TATA"));
   
  }
  
  @Test
 public final void testGenUid() {
 
    String nom="titi";
	String prenom="tata";
	GestAjoutUsers gtest= new GestAjoutUsers();
	String re=gtest.genUid(nom,prenom);
	assertTrue("longueur>=5",re.length()>=5 );
	assertTrue("longueur<=9", re.length()<=9);
	
	assertTrue("1ere lettre prenom",re[0]=='t');
	assertTrue("1ere lettre nom", re[1]=='t');
 }
  
 @Test
 public final void testGenUid() {
 /*
	48-57
	97-122*/
    String nom="[email protected]";
	String prenom="ta$ta";
	GestAjoutUsers gtest= new GestAjoutUsers();
	String login=gtest.genUid(nom,prenom);
	for(int i=0; i<login.length();i++){
		assertTrue("lettre "+i, login[i]>=48 && login[i]<=57 || login[i]>=97 && login[i]<=122);
	}
   
 @Test
 public final void testAddUser() {
    String nom="[email protected]";
	String prenom="ta$ta";
	GestAjoutUsers gtest= new GestAjoutUsers();
	User testU=gtest.addUser(nom,prenom);
	User testU2=gtest.addUser(nom,prenom);
	assertFalse("meme login",testU.getLogin().equals(testU2.getLogin()));
  }
  
  
  
 @Test
 public final void testgenPassword() {
    String nom="[email protected]";
	String prenom="ta$ta";
	GestAjoutUsers gtest= new GestAjoutUsers();
	assertTrue("longueur de 10",gtest.genPassword(10).length()==10);
	assertTrue("longueur de 1",gtest.genPassword(1).length()==1);
	assertTrue("longueur de 0",gtest.genPassword(0).length()==0);
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
 @Test
 public final void testgenPassword() {
    String nom="[email protected]";
	String prenom="ta$ta";
	GestAjoutUsers gtest= new GestAjoutUsers();
	assertFalse("egalité",gtest.genPassword(10).equals(gtest.genPassword(10)));
	...
 }

 

correction triggers et procédures stockées

# 2) Destruction de la station
DELETE FROM station WHERE id=2; #impossibe il y a une clé étrangère
# 3) Insertion d'une nouvelle station
INSERT INTO station VALUES (3, "yolo", 350, "Antille", 80000, "Guadeloppe");
# 4) Insertion d'une nouvelle station avec
INSERT INTO station VALUES (4, "swag", 666, "nullepart", 85000, "anywhere");
# 5) implanter par un trigger la règle suivante : si le prix d’une activité baisse, alors le tarif de la station doit augmenter de la différence.
DELIMITER //
CREATE TRIGGER udp_prix AFTER UPDATE
ON activite
FOR EACH ROW
BEGIN
IF NEW.prix < OLD.prix THEN
UPDATE station SET tarif=tarif +(OLD.prix - NEW.prix);
END IF;
END;
//
# 7) ajouter le nb d'activité
ALTER TABLE station ADD nbActivites INT DEFAULT 0;
# 8) trigger qui maintient cette information
DELIMITER //
CREATE TRIGGER maintient AFTER INSERT
ON activite
FOR EACH ROW
BEGIN
UPDATE station SET nbActivites = nbActivites + 1;
END;
//
DELIMITER //
CREATE TRIGGER supp AFTER DELETE
ON activite
FOR EACH ROW
BEGIN
UPDATE station SET nbActivites = nbActivites - 1;
END;
//
# 9) interdire par un tigger l'insertion d'une ligne dans la table séjour si le solde du client est inf au nb de palce * tarif station
DELIMITER //
CREATE TRIGGER interdiction AFTER INSERT
ON sejour
FOR EACH ROW
BEGIN
IF client.solde < (sejour.nbplace * station.tarif) THEN
DELETE FROM sejour WHERE idcli=NEW.idcli;
END IF;
END
//

-------------------------------------------------------------------question 1 procedure
delimiter //
DROP FUNCTION IF [...]

Go to Top