Bonjour,
Je suis novice en perl. Je dois réaliser un script me permettant de récupérer des informations depuis une bdd.
Ma première requête me permet de récupérer l'id du dernier utilisateur. J'aimerai utiliser cette id pour faire mes autres requêtes et donc récupérer le résultat dans une variable.
Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
 
#!/usr/bin/perl -w
 
 
use DBI;
 
#Les paramètres
my $base = 'dhcp';
my $host = 'localhost';
my $login = 'root';
my $mdp = '';
 
#La connexion
my $dbh = DBI->connect("dbi:mysql:dbname=$base;host=$host;", $login, $mdp)
    or die 'Impossible de se connecter à la base de données : '.DBI::errstr;
 
my $req1 = 'SELECT MAX(id_pers) FROM personnes';
 
my $id_pers = $dbh->prepare($req1)
    or die 'Impossible de préparer la requête : '.$dbh->errstr;
 
$id_pers->execute
   or die 'Impossible d\'exécuter la requête : '.$id_pers->errstr;
 
my @id_pers;
while (@id_pers = $id_pers->fetchrow_array) {  # retrieve one row
 
   print"@id_pers\n"; # c'est cette valeur que je voudrais récupérer
}
 
 
# pour ensuite l'utiliser dans cette requête
my $req2 = 'SELECT nom FROM personnes WHERE id_pers="@id_pers"';
 
my $nom = $dbh->prepare($req2)
    or die 'Impossible de préparer la requête : '.$dbh->errstr;
 
$nom->execute
    or die 'Impossible d\'exécuter la requête : '.$nom->errstr;
 
my @nom;
while (@nom = $nom->fetchrow_array) {  # retrieve one row
        print"@nom\n";
}
 
$req1->finish;
$req2->finish;

Après de nombreuses recherches, je me tourne vers vous,
Merci.