kan ikke finde fejlen i mit mysql script

Her kan du få hjælp og stille spørgsmål til PHP!
Besvar
kris914g
Rutineret
Rutineret
Indlæg: 75
Tilmeldt: 19. jun 2012, 14:02

kan ikke finde fejlen i mit mysql script

Indlæg af kris914g » 17. jul 2014, 16:25

hey jeg har en fejl i linje 64 og jeg kan ikke regne ud hvad der er forkert jeg håber i kan vise det eller give et hint :D

Kode: Vælg alt

<?php

class CMySQL {

    // variables
    var $sDbName;
    var $sDbUser;
    var $sDbPass;

    var $vLink;

    // constructor
    function CMySQL() {
        $this->sDbName = 'root';
        $this->sDbUser = 'root';
        $this->sDbPass = 'root';

        // create db link
        $this->vLink = mysql_connect("localhost", $this->sDbUser, $this->sDbPass);

        //select the database
        mysql_select_db($this->sDbName, $this->vLink);

        mysql_query("SET names UTF8");
    }

    // return one value result
    function getOne($query, $index = 0) {
        if (! $query)
            return false;
        $res = mysql_query($query);
        $arr_res = array();
        if ($res && mysql_num_rows($res))
            $arr_res = mysql_fetch_array($res);
        if (count($arr_res))
            return $arr_res[$index];
        else
            return false;
    }

    // return table of records as result in pairs
    function getPairs($query, $sFieldKey, $sFieldValue, $arr_type = MYSQL_ASSOC) {
        if (! $query)
            return array();

        $res = $this->res($query);
        $arr_res = array();
        if ($res) {
            while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
                $arr_res[$row[$sFieldKey]] = $row[$sFieldValue];
            }
            mysql_free_result($res);
        }
        return $arr_res;
    }

    // return table of records as result
    function getAll($query, $arr_type = MYSQL_ASSOC) {
        if (! $query)
            return array();

        if ($arr_type != MYSQL_ASSOC && $arr_type != MYSQL_NUM && $arr_type != MYSQL_BOTH)
            $arr_type = MYSQL_ASSOC;
        $res = $this->res ($query);
        $arr_res = array();
        if ($res) {
            while ($row = mysql_fetch_array($res, $arr_type))
                $arr_res[] = $row;
            mysql_free_result($res);
        }
        return $arr_res;
    }

    // return one row result
    function getRow($query, $arr_type = MYSQL_ASSOC) {
        if (!$query)
            return array();
        if ($arr_type != MYSQL_ASSOC && $arr_type != MYSQL_NUM && $arr_type != MYSQL_BOTH)
            $arr_type = MYSQL_ASSOC;
        $res = $this->res ($query);
        $arr_res = array();
        if($res && mysql_num_rows($res)) {
            $arr_res = mysql_fetch_array($res, $arr_type);
            mysql_free_result($res);
        }
        return $arr_res;
    }

    // escape
    function escape($s) {
        return mysql_real_escape_string(strip_tags($s));
    }

    // get last id
    function lastId() {
        return mysql_insert_id($this->vLink);
    }

    // display errors
    function error($text, $isForceErrorChecking = false, $sSqlQuery = '') {
        echo $text; exit;
    }
}

$GLOBALS['MySQL'] = new CMySQL();


Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg: 1528
Tilmeldt: 28. dec 2010, 10:49

Re: kan ikke finde fejlen i mit mysql script

Indlæg af ThomasI » 18. jul 2014, 08:41

Det er lidt svært at sidde og tælle linjer i din kode...

hvad står der helt præcist på linje 64? ;)

kris914g
Rutineret
Rutineret
Indlæg: 75
Tilmeldt: 19. jun 2012, 14:02

Re: kan ikke finde fejlen i mit mysql script

Indlæg af kris914g » 18. jul 2014, 22:43

her er det:

Kode: Vælg alt

 $res = $this->res($query);
og her er den sammen satte kode:

Kode: Vælg alt

 
// return table of records as result
    function getAll($query, $arr_type = MYSQL_ASSOC) {
        if (! $query)
            return array();

        if ($arr_type != MYSQL_ASSOC && $arr_type != MYSQL_NUM && $arr_type != MYSQL_BOTH)
            $arr_type = MYSQL_ASSOC;

        $res = $this->res($query);
        $arr_res = array();
        if ($res) {
            while ($row = mysql_fetch_array($res, $arr_type))
                $arr_res[] = $row;
            mysql_free_result($res);
        }
        return $arr_res;
    }

uruloke
Begynder
Indlæg: 9
Tilmeldt: 9. maj 2014, 19:04

Re: kan ikke finde fejlen i mit mysql script

Indlæg af uruloke » 28. jul 2014, 12:01

Nu jeg ikke selv speciel god til php.
Men hvad jeg ved af så virker det til at du gør det her forkert

Kode: Vælg alt

$res = $this->res($query);
Har ikke hørt om den type der hedder res før, måske skulle du bare bruge en query? eksempelvis en jeg bruger i noget af min kode

Kode: Vælg alt

$result = $db_new -> query("SELECT * FROM users ORDER BY RAND() LIMIT 4");


Men du skal nok også til at bruge mysqli i stedet for mysql, da mysql ikke er supported i næste version af PHP

Crow
Rutineret
Rutineret
Indlæg: 64
Tilmeldt: 15. apr 2014, 11:24

Re: kan ikke finde fejlen i mit mysql script

Indlæg af Crow » 1. aug 2014, 13:24

hvorfor er mysql ikke supportet i php og hvad er forskelling mellem mysql og mysqli ?

uruloke
Begynder
Indlæg: 9
Tilmeldt: 9. maj 2014, 19:04

Re: kan ikke finde fejlen i mit mysql script

Indlæg af uruloke » 1. aug 2014, 13:53

mysqli står i for improved, og det er det virkelig også.
Der er mange ting som de har gjort ved mysqli som lukker en del sikkerhedshuller
Du kan se at de skriver det eksempelvis her på PHP's hjemmeside, så jeg vil foreslå dig at lærer mysqli istedet http://php.net/manual/en/function.mysql-query.php

Besvar