I have an error "Can't use string ("Test") as an ARRAY ref while "strict refs" in use ~~~"
I am trying to add word into the database, and then it gives me this error. please help ,,
Expand|Select|Wrap|Line Numbers
- sub addWords {
- my $self = shift;
- my $wordsRef = shift;
- my @words = @$wordsRef;
- my $language = shift;
- my $wordId;
- if (!@words || !$language){
- die "addWords invalid arguments.";
- }
- my $languageId = $language->id();
- my $db = DBI->connect("dbi:SQLite:$DB_FILE","","",{RaiseError =>1, AutoCommit => 1, sqlite_unicode => 1}) or die "Unable to connect: $DBI::errstr\n";
- foreach my $word (@words){
- $db->do("INSERT INTO Words (word, languageId) Values ( \"$word\", $languageId);")
- or print "Failed to add $word to db: $db->errstr()";
- }
- $db->disconnect or warn "Disconnection failed: $DBI::errstr\n";;
- }
Expand|Select|Wrap|Line Numbers
- $object = Database->new();
- $obj->addWords("Test", 1);