Mailinglisten-Archive |
Hallo,
Probier dein Script mal mit empty(), das würde das gleiche für dich sein wie
strlen() und evtl. sogar ohne Fehler ;)
Am 07.04.10 17:55 schrieb "Musa" unter <BMusa at web.de>:
> hi,
>
> der code:
>
> //////////////////////////////////////////////////////////////////////////////
> /////////////////
> /// verbindung ///
> //////////////////////////////////////////////////////////////////////////////
> /////////////////
>
> function dbverbinden() {
> global $db_vb_id;
> $db_host = "localhost";
> $db_benutzer = "benutzername";
> $db_kennwort = "kennwort";
> $db_name = "datenbank";
> $db_vb_id = mysql_connect($db_host, $db_benutzer, $db_kennwort);
> if (!$db_vb_id) {
> $fehlermeldungen['datenbank']['verbindung'] = "fehler";
> } else {
> $db_wahl = mysql_select_db($db_name, $db_vb_id);
> if (!$db_wahl) {
> $fehlermeldungen['datenbank']['dbwahl'] = "fehler";
> dbtrennen();
> } else {
> dbcommit("aus");
> }
> }
> unset($db_host, $db_benutzer, $db_kennwort, $db_name);
> }
>
> //////////////////////////////////////////////////////////////////////////////
> /////////////////
> /// verbindung trennen ///
> //////////////////////////////////////////////////////////////////////////////
> /////////////////
>
> function dbtrennen() {
> global $db_vb_id;
> if (strlen($db_vb_id) > 0) {
> mysql_close($db_vb_id);
> unset($db_vb_id);
> }
> }
>
> //////////////////////////////////////////////////////////////////////////////
> /////////////////
> /// commit steuerung ///
> //////////////////////////////////////////////////////////////////////////////
> /////////////////
>
> function dbcommit($commit) {
> global $db_vb_id;
> var_dump($db_vb_id);
> if (strlen($db_vb_id) > 0) {
> if ($commit == 'aus') {
> mysql_query("SET AUTOCOMMIT = 0", $db_vb_id);
> } else if ($commit == 'an') {
> mysql_query("SET AUTOCOMMIT = 1", $db_vb_id);
> } else if ($commit == 'ja') {
> mysql_query("COMMIT", $db_vb_id);
> } else if ($commit == 'nein') {
> mysql_query("ROLLBACK", $db_vb_id);
> }
> }
> }
>
> var_dump gibt folgendes aus:
>
> resource(14) of type (mysql link)
>
> beim laden der startseite werden alle drei funktionen ausgeführt, hier nochmal
> alle meldungen:
>
> resource(14) of type (mysql link)
> Warning: strlen() expects parameter 1 to be string, resource given in
> X:\...\phpdatei.php on line XY
> Warning: strlen() expects parameter 1 to be string, resource given in
> X:\...\phpdatei.php on line XY
>
> 1. ausgabezeile -> var_dump aus der funktion "commit steuerung"
> 2. ausgabezeile -> strlen() aus der funktion "commit steuerung"
> 3. ausgabezeile -> strlen() aus der funktion "verbindung trennen"
>
> der gleiche fehler/warnung wird auch bei variablen ausgegeben, die datum
> beinhalten. sollte ich anstelle von strlen() isset() verwenden oder kann man
> das problem irgendwie anderwertig lösen? denn manchmal habe ich auch variablen
> die einen datum oder zeichenkette beinhalten können oder aber auch leer sein
> können. deswegen nutze ich strlen().
>
> ich würde mich über eine lösung oder meinungen freuen.
>
> vielen dank.
>
> gruß
> musa
>
>
> ------------------------------------------------------------------------------
> --
>
>
>
php::bar PHP Wiki - Listenarchive