PHP&MySQL: @mysql_pconnect
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
are
arsen
ausnehmen
bad
connection
connections
daten
expression
filter
fragen
geffneten verbindungen
kombi
los
major
minute
normalfall
pa
regular
zuknftigen verwendung
berprfung
-
Hallo ich schreib grad eine classe für einem php script welches daten aus einer MySQL DB holt und auch dort speichert ...
zum verbindungsaufbau binn ich jetzt auf zwei möglich keiten gestossen.
@mysql_pconnect($host,$user,$pass)
und
@mysql_connect($this->host,$this->user,$this->pass)
und da hab ich mich gefragt, welches ich den jetzt un verwenden sollte.
bei mysql_pconnect hab ich gelesen, dass es nach bereits offenen Verbindungensucht und falls vorhandne diese verwendet. Allerdings werden diese dann am ende des Scriptes nicht geschlossendie Verbindung zum SQL Server wird beim Beenden des PHP-Skripts nicht geschlossen. Sie bleibt zur zukünftigen Verwendung bestehen. (mysql_close() schließt keine von mysql_pconnect() geöffneten Verbindungen).
bleiben die also ewig offen oder was ist dann los ?
zur überprüfung ob bereits eine verbindung besteht kann ich ja auch:
STATIC $conn;
if(!$conn){$conn = mysql_connect($this->host,$this->user,$this->pass);}
$this->conn=&$conn;
wann sollte man jetzt also was einsetzten ?
Außerdem frage ich mich was dieses @ vor den befehlen bewirkt.
hoffe ihr könnt mir helfen. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Das @ bewirkt, dass die Fehlermeldung ignoriert wird, wenn es eine gibt.
Im Normalfall bringt dir mysql_pconnect() nicht viel, könnte eher Probleme machen. Also nimm mysql_connect.
Hier noch was von php.net:
pconnect is preferred when you are using a remote database server on a major web site. mysql in particular stays happier with 1 open connection as opposed to 1000 connections a minute =)
-
So mitlerweile funktioneirt meine Klasse, (mit normalem mysql_connect)
Jetzt stellt sich mir nur die frage wie schütze ich die eingaben, das ich keinen Schadcode eingetragen bekomme ?
Ich habe vor den Code so zu erweitern, dass dann später einmal BB-Code möglich ist,
aber eben kein html, php oder so! Und vl auch einen Bad-Word-filter.
Aber in welcher reihenfolge sollen ich das angehen ...
kenn mcih mit den Filterungsmöglichkeiten auch noch kaum aus
hab bis jetzt nur nl2br & stripslashes benutzt,
aber da bleibt ja alles voranden,
vl wäre es ja besser sie gleich zu entfernen ?
und wie mach ich dann danach sinnvoll den BBcode? -
loki-arsen schrieb:
vl wäre es ja besser sie gleich zu entfernen ?
und wie mach ich dann danach sinnvoll den BBcode?
Ich sage nur: Regular Expressions... Das Beste mittel für bbcodes. Ich habe mal ne ultimative URL-RegExp gesehn, die is auch noch irgendwo im forum zu finden.
Und sonst würde ich einfach alle sonstigen "<" mit "<" und ">" mit ">" ersetzen lassen. Sonst gibt es eigentlich nich soviel sachen, mit denen man Unfug anstellen kann.
-AlienDwarf -
So hab jetzt ein bissal gestöbert und bin auf einige sachen gestossen (strip_tags(), htmlentities(), htmlspecialchars(), str_replace(), eregi_replace)
1)So hatte jetzt zuerst die Idee alle schädlichen sachen rauszufilltern.
Nur weiß ich nucht wie ich dass anstellen soll. am besten wäre eine kombi
funktion aus strip_tags(); und htmlentities();
htmlentities() setzt nämlich alle Zeichen in HTML-Code um so wie ichs gerne hätte, bietet aber leider nicht die möglichkieten ausnahmen zu definieren wie strip_tags(). Damit wäre es möglich zB so sachen wie <i> <b> <img> <a> freizugeben. Schade dass es sowas nicht gibt.
2)Naja und zum BB-Code. Dafür werde ich wohl eregi_replace() verwenden, da es sonst dazu kommen kann, dass am ende eines Eintrages noch ein offener Tag vorhanden ist, der dann nicht geschlossen wird wenn ich str_replace() verwende.
Hatt vl jemand ne Idee zu ersterem ?
3)Außerdem hatte ich die Idee das Scrip Teilweiße auch für ein offenes GuestBook einzusetzten, nur wollte ich es natürlich auch sicher vor Spam machen, daher ist mir eingefallen, ich könnte den einzutragenden Text auf URLs ( http:// bzw. www) untersuchen und falls eine sollche vorhanden ist so eine Graphik mit Text zum abtippen ausgeben bevor der Text wirklich eingetragen wird.
Dazu hab ich mir überlegt wie ich diese Realisieren sollte.
Geht dass nur mit DB ? in der Steht zu welcher graphik welcher Text gehört ?
weil wenn ich dass irgendwie mit übergebe, könnte das ja der Bot mitlesen und darauf reagieren oder?
-
zu Spamschutz:
Schau mal auf http://w2.syronex.com/jmr/safemailto/de/#st4
ist mit javascript umgesetzt und es kostet nichts.
lG. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage