Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]3701[/thread]

Datei upload in Datenbank

Leser: 1


<< |< 1 2 >| >> 14 Einträge, 2 Seiten
sike
 2006-07-11 19:40
#34518 #34518
User since
2006-07-11
7 Artikel
BenutzerIn
[default_avatar]
Hi Leute,
kann mir jemand sagen wie ich eine Datei in eine Datenbank hochlade?

MFG
sike

edit pq: tt-tags hinzugefügt
dta
 2006-07-11 19:54
#34519 #34519
User since
2006-07-11
11 Artikel
BenutzerIn
[default_avatar]
[quote=sike,11.July.2006, 17:40]
Code: (dl )
1
2
3
open(DATEI, "> boot.sec")|| die " Datei nicht gefunden!";
$boot=<DATEI>;
binmode DATEI;[/b]
[/quote]
Code: (dl )
1
2
3
4
open(DATEI, "<", "boot.sec") || die("open failed: $!");
binmode DATEI; # binmode vor dem lesen
$boot = do { local $/; <DATEI> }; # Alles auf einmal, siehe perldoc perlvar
close(DATEI);


Und das SQL solltest du auch anders machen:

Code: (dl )
1
2
my $sql=qq{INSERT INTO infos (boot) VALUES (?)};
$dbh->do($sql, {}, $boot);


Dabei wird $boot gleich richtig gequotet. In so nem Bootsektor koennen durchaus Anfuehrungszeichen und dergleichen stehen. :)
dta
 2006-07-11 20:03
#34520 #34520
User since
2006-07-11
11 Artikel
BenutzerIn
[default_avatar]
Arg, da ist ja noch mehr im Argen, die temporaere Datei boot.sec braucht's ja gar nicht:

Code: (dl )
1
2
3
4
open(DEV, "<", "/dev/hda1") or die("Cannot open: $!");
binmode DEV;
sysread DEV, $boot, 512;
close(DEV);
sike
 2006-07-12 01:34
#34521 #34521
User since
2006-07-11
7 Artikel
BenutzerIn
[default_avatar]
Alles klar danke, werde ich gleich morgen früh mal ausprobieren ^^
sike
 2006-07-12 13:10
#34522 #34522
User since
2006-07-11
7 Artikel
BenutzerIn
[default_avatar]
Kann mir vieleicht auch einer sagen wie ich die Datei aus einer Datenbank herraushole? =)

mfG
sike
renee
 2006-07-12 14:08
#34523 #34523
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du solltest in der Tabelle vielleicht noch eine Spalte mit Namen oder etwas anderem einfügen, das als Schlüssel dient.

[sql]SELECT boot FROM infos WHERE schluessel = '$schluesselwert'[/sql]

Wenn Du nur einen Datensatz hast, dann

[sql]SELECT boot FROM infos[/sql]
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
sike
 2006-07-12 14:58
#34524 #34524
User since
2006-07-11
7 Artikel
BenutzerIn
[default_avatar]
Wie man einen Datensatz aus einer Tabelle ausliest weiß ich. Mir geht es um das obrige Beispiel, wie man eine Datei aus einer Datenbank ausliest, also wenn man z.B. als Datentyp Blop eingestellt hat und ich die Datei halt wieder so komplett rausholen möchte ohne dabei irgendwelche Information zu verlieren...
renee
 2006-07-12 15:04
#34525 #34525
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Die Datei ist keine Datei, sondern ein Datensatz. Deswegen musst Du die Daten ganz normal mit einem SELECT herausziehen... Da verlierst Du keine Informationen.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
sike
 2006-07-12 15:15
#34526 #34526
User since
2006-07-11
7 Artikel
BenutzerIn
[default_avatar]
Und wie bekomme ich diesen Datensatz, dann wieder in eine Datei geschrieben?
renee
 2006-07-12 15:38
#34527 #34527
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/perl

use strict;
use warnings;
use DBI;

my $dbh = DBI->connect(...) or die $DBI::errstr;
my $select = q~SELECT boot FROM infos~;
my $sth = $dbh->prepare($select) or die $dbh->errstr();
$sth->execute();

my ($bin) = $sth->fetchrow_array();

my $target = '/path/to/target.file';
open(my $fh,'>',$target) or die $!;
binmode $fh;
print $fh $bin;
close $fh or die $!;
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< |< 1 2 >| >> 14 Einträge, 2 Seiten



View all threads created 2006-07-11 19:40.