Virtueller Server mit Domain gesucht + Frage nach SQL mit Perl
Nico
- webserver
0 Peter Squentz0 Nico
Hi Surfer!
Ein Freund von mir und ich haben einen Chat designed, und ihn auch schon probehalber online gesetzt. Er läuft an sich sehr gut, nur ist der Server sehr langsam. Jetzt suchen wir einen wirklich guten virtuellen Server mit Domain, CGI, mind. 50 MB Webspace, der relativ schnell ist und selten ausfällt. Die Daten sollten auf Erfahrungswerten beruhen. Etwa bei www.webdesign-net.de, das echt ein tolles Angebot ist, hat ein
Freund von mir einen Chat gehabt, der permanent serverseitig abgestürzt ist. Wenn das Angebot auch noch höchstens 300 DM pro Jahr kostet, wäre es super.
Zweistens: Für diesen Chat, der schon relativ sicher ist, wollen wir nun auch MySQL in Perl einsetzen. Dazu haben wir folgendes Script:
-------------------------------------
#!/usr/bin/perl
use DBI;
$host = "localhost";
$user = "root";
$password = "DASPW";
$database = "chat";
$table = "normal";
$dbh = DBI->connect("DBI:mysql:$database:$host", $user, $password, { PrintError => 0}) die "Can't connect: $DBI::errstr";
#$SQL = "CREATE TABLE $table (alias BLOB, pw BLOB, email BLOB)";
#$SQL = "DELETE FROM $alias WHERE Alias = 'asd'";
#$SQL = "INSERT INTO $alias (alias, pw, email) VALUES ('$alias', '$pw', '$email')";
#$SQL = "SELECT * FROM $alias WHERE alias like ''";
#$SQL = "SELECT * FROM $alias WHERE alias like '%$search_for%' ORDER BY $sort";
#$SQL = "SELECT * FROM $alias WHERE alias like '%$search_for%' LIMIT 0,30";
#$SQL = "UPDATE $alias SET alias = '$field'";
#$SQL = "DROP TABLE $table";
#$SQL = "DROP DATABASE $database";
if ($SQL ne "") { &doSQL; }
sub doSQL {
print "query: $SQL\n";
$dbh->do("$SQL") die $DBI::errstr;
}
$dbh->disconnect;
---------------------------------------
Wie kann ich nun die einzelnen Werte einer Zeile (pro Benutzer wollen wir je eine Datenbank erstellen, also für Benutzer1 die Datei Benutzer1, für Benutzer2 die Datei Benutzer2 etc.) je einer
Variable zuweisen? Also dass der Spaltenwert von email auch in der Variable $email steht?
Wenn Rückfragen sind, könnt ihr die auch stellen! ;)
Danke im Voraus, Nico!
Ein Freund von mir und ich haben einen Chat designed, und ihn auch schon probehalber online gesetzt. Er läuft an sich sehr gut, nur ist der Server sehr langsam. Jetzt suchen wir einen wirklich guten virtuellen Server mit Domain, CGI, mind. 50 MB Webspace, der relativ schnell ist und selten ausfällt. Die Daten sollten auf Erfahrungswerten beruhen. Etwa bei www.webdesign-net.de, das echt ein tolles Angebot ist, hat ein
Freund von mir einen Chat gehabt, der permanent serverseitig abgestürzt ist. Wenn das Angebot auch noch höchstens 300 DM pro Jahr kostet, wäre es super.
CGI-Chatsysteme sind bei Providern prinzipiell nicht gerne gesehen, da sie die Server oft unangemessen auslasten, zumindest wenn sie stark frequentiert werden. Mit einem Etat von 300 DM jährlich wirst Du es vermutlich schwer haben, einen geeigneten Provider zu finden.
Wie kann ich nun die einzelnen Werte einer Zeile (pro Benutzer wollen wir je eine Datenbank erstellen, also für Benutzer1 die Datei Benutzer1, für Benutzer2 die Datei Benutzer2 etc.) je einer
Uah! Das ist ja ein völlig abstruser Ansatz. Du solltest die Datensätze zeilenweile in einer Tabelle oder in einer Relation von Tabellen speichern.
Peter
Hallo Peter!
CGI-Chatsysteme sind bei Providern prinzipiell nicht gerne gesehen, da sie die Server oft unangemessen auslasten, zumindest wenn sie stark frequentiert werden. Mit einem Etat von 300 DM jährlich wirst Du es vermutlich schwer haben, einen geeigneten Provider zu finden.
Nun ja, ich kenne www.prosite.de, da haben wir den im Moment, der kostet 20 DM pro Monat und sonst garnichts. Nur ist der halt eben sehr langsam, und wenn mal 30 Chatter oder mehr, wie wir erwarten, da sind, werden die zwar nichts dagegen haben, aber das wird elend langsam. webdesign-net.de hat auch nichts dagegen, nur ist der Chat die ganze Zeit down. Und server4you.de, wo ein anderer meiner Internet-Freunde seinen Chat hat, ist relativ teuer, und für Privatpersonen sehr teuer, wenn sich nicht mindestens 5 Leute finden, die die Kosten untereinander aufteilen... Wir wären jetzt höchstens zu dritt...
Uah! Das ist ja ein völlig abstruser Ansatz. Du solltest die Datensätze zeilenweile in einer Tabelle oder in einer Relation von Tabellen speichern.
Nun ja, es garantiert mehr Sicherheit für den einzelnen User, da jemand, wenn er es schaffen sollte, die Datenbank zu bekommen, höchstens die Userdaten dieses Einzelnen herauszubekommen, und nicht direkt alle.
Desweiteren kenne ich mich mit Datenbanken bisher wenig aus und tue gerade meine ersten Schritte in PHP3 damit, wo das relativ einfach ist. Laut meines Wissens sieht ja der Inhalt einer Datenbank in etwa so aus:
Bezeichnung d. Spalte NameBez. d. Sp. PWBez. d. Sp. eMail
Diese Zeilen stehen da so ja nicht drin, oder?
User1 passwort1 user1@user1.de
User2 passwort2 user2@user2.de
etc.
Und wenn ich es so mache, was vielleicht wirklich sinvoller ist, wie kann ich dann einen Vergleich mit den Daten machen? Wenn man die Lösung mit der einzelnen Datenbank nimmt, kann man die Abfrage, ob der User überhaupt existiert, ja erst einmal mit
if(-e $hash{'name'})
machen (wobei in %hash die Formulardaten stehen). Wie kann ich das nun mit der gesamten Datenbank machen, und wie kann ich dann überprüfen, ob das Passwort richtig ist (mit meinem Script da)? Die eMail-Adresse etc. (es kommen weitere Daten hinzu) sind für interne Zwecke gedacht.
Also, allgemein *g* gesagt: Wie kann ich die Datenbank durchlaufen, was wir in einer textbasierten Datenbank, die wir bisher hatten, mit
open(DATEI, "<daten.dat");
@dat = <DATEI>;
for(@dat)
{
($name, $pw, $email) = split(/\t/, $_);
if($hash{'name'} eq $name && $hash{'pw'} eq $pw)
{
$login = 1;
last;
}
else
{
$login = 0;
}
}
close(DATEI);
realisiert haben?
Ich hoffe, du hast genug Zeit, das durchzulesen... ;)
Tschau, Nico!
Bezüglich virtuellen Server
www.internet-outsourcing.de
mfg
Hunold