Halo Linuxer, aku ada masalah nih sbb
gimana insert data ke mysql dari
inputan seorang user,
inputan itu nanti masing-masing masuk ke fieldnya.
saya udah coba tapi gagal terus kalo inputannya dari
user
tapi kalo langsung ditulis di source bisa tuh.
berikut adalah source programmnya
#!/usr/bin/perl
use DBI;
sub insert {
my($nim,$nama,$password,$ipk) = @_;
my($sql);
#konfigurasi database
$database = "test";
$dbuser = "test";
$dbpasswd = "TesTer";
$dbhost = "localhost";
$dsn =
"DBI:mysql:database=$database;host=$dbhost";
$dbh = DBI->connect($dsn,$dbuser,$dbpasswd) ||
die $DBI::errstr;
$sql = "insert into sms_mhs
(nim,nama,password,ipk) values
('$nim','$nama','$password')";
#$sql = "insert into sms_mhs
(nim,nama,password,ipk) values
('12345678','test','12345678')";
$dbh->do($sql) || die ($dbh->err);
return $dbh->{'mysql_insertid'};
$dbh->disconnect;
}
print "INPUTAN : ";
while ($isi=<>) {
if ($isi =~/12345678,test,12345678/){#inputan
pakai koma sebagai pemisah
#if ($isi =~/12345678 test 12345678/){#inputan
pakai spasi sebagai pemisah
#if ($isi
=~/(\d{8})(\s{1})(\w{4})(\s{1})(\w{8})(\s{1})(\w{2})/){
#if ($isi
=~/(\d{8})(\s{1})(\d{4})(\s{1})(\d{8})(\s{1})(\d{2})/){
#if ($isi
=~/(\d{2})(\d{2})(\d{2})(\d{2})(\s{1})(\w{4})(\s{1})(\w{8})(\s{1})(\w{2})/){
insert();
}else{
print "error";
}#end if
print "\nINPUTAN : ";
}#end while
--
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis.php