/[LeafOK_CVS]/pvpgn-1.7.4/scripts/sql/db_api.pl
ViewVC logotype

Annotation of /pvpgn-1.7.4/scripts/sql/db_api.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations)
Tue Jun 6 03:41:37 2006 UTC (19 years, 9 months ago) by sysadm
CVS Tags: pvpgn_1-7-4-0_MIL
Branch point for: GNU, MAIN
Content type: text/x-perl
Initial revision

1 sysadm 1.1 #!/usr/bin/perl
2    
3     # A MySQL module for converting accounts
4    
5     use DBI;
6    
7     sub db_init {
8     my $dbhost = shift;
9     my $dbname = shift;
10     my $dbuser = shift;
11     my $dbpass = shift;
12    
13     $dbh = DBI->connect("DBI:mysql:$dbname;host=$dbhost", $dbuser, $dbpass) or die "Error connectding to DB!\n";
14    
15     return $dbh;
16     }
17    
18     sub db_set {
19     my $dbh = shift;
20     my $userid = shift;
21     my $alist = shift;
22     my ($i);
23    
24     $dbh->do("INSERT INTO BNET (uid) VALUES ($userid)");
25     $dbh->do("INSERT INTO profile (uid) VALUES ($userid)");
26     $dbh->do("INSERT INTO Record (uid) VALUES ($userid)");
27     $dbh->do("INSERT INTO friend (uid) VALUES ($userid)");
28     $dbh->do("INSERT INTO Team (uid) VALUES ($userid)");
29     for($i=0; $i<scalar(@alist);$i++) {
30     my $tab = $alist[$i]{tab};
31     my $col = $alist[$i]{col};
32     my $val = $alist[$i]{val};
33    
34     $nval = &add_slashes($val);
35     $sth = $dbh->prepare("SHOW FIELDS FROM $tab LIKE '$col'");
36     $sth->execute();
37     if ($sth->rows < 1) {
38     $sth->finish;
39     $rv = $dbh->do("ALTER TABLE $tab ADD COLUMN `$col` VARCHAR(128)") or die "Erorr while doing ALTER!\n";
40     }
41     $query = "UPDATE $tab SET `$col` = '$nval' WHERE uid = $userid";
42     # print "$query\n";
43     $rv = $dbh->do($query) or die "Erorr while doing UPDATE!\n"
44     }
45     }
46    
47     sub add_slashes {
48     my $str = shift;
49    
50     $str =~ s/\\/\\\\/g;
51     $str =~ s/\'/\\\'/g;
52    
53     return $str;
54     }
55    
56    
57     return 1;

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1