Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Problem] Mysql


Rekomendowane odpowiedzi

Opublikowano

Witam mam taki oto problem:

Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: NO) in /home/u274436365/public_html/db/mysql.php on line 13 mySQL nie jest teraz dostępny, baza jest przecišżona... 

 

Baza nie jest przeciążona

Mój mysql.php:

<?php

function doquery($query, $table, $fetch = false){
  global $link, $debug, $xnova_root_path;
//    echo $query."<br />";
    require($xnova_root_path.'config.php');



    if(!$link)
    {
        $link = mysql_connect($dbsettings["mysql.cixx6.com"], $dbsettings["u274436365_malac"],
                $dbsettings["haslo"]) or
                $debug->error(mysql_error()."<br />$query","SQL Error");
                //message(mysql_error()."<br />$query","SQL Error");

        mysql_select_db($dbsettings["u274436365_malac"]) or $debug->error(mysql_error()."<br />$query","SQL Error");
        echo mysql_error();
    }
    // por el momento $query se mostrara
    // pero luego solo se vera en modo debug



    $sql = str_replace("{{table}}", $dbsettings["prefix"].$table, $query);


    $sqlquery = mysql_query($sql) or
                $debug->error(mysql_error()."<br />$sql<br />","SQL Error");
                //print(mysql_error()."<br />$query"."SQL Error");


    unset($dbsettings);//se borra la array para liberar algo de memoria

    global $numqueries,$debug;//,$depurerwrote003;
    $numqueries++;
    //$depurerwrote003 .= ;
    $debug->add("<tr><th>Query $numqueries: </th><th>$query</th><th>$table</th><th>$fetch</th></tr>");

    if($fetch)
    { //hace el fetch y regresa $sqlrow
        $sqlrow = mysql_fetch_array($sqlquery);
        return $sqlrow;
    }else{ //devuelve el $sqlquery ("sin fetch")
        return $sqlquery;
    }

}



// Created by Perberos. All rights reversed © 2006
?>

 

Hasło sam zmieniłem na potrzebę wstawienia na forum.

Opublikowano

Radziłbym jak najszybciej zmienić skrypt. No chyba, że jest to tylko jakaś gra dla kilku znajomych...

 

 

Żeby nie być gołosłownym:

 

global $link, $debug, $xnova_root_path;

global $numqueries,$debug;

 

Jeśli musisz użyć global-i to znaczy, że coś robisz źle, try again.

 

require($xnova_root_path.'config.php');

 

includowanie (konfiguracji) do wnętrza funkcji, naprawdę niezbyt dobry pomysł

 

 

unset($dbsettings);//se borra la array para liberar algo de memoria

 

w przypadku takiej zwykłej, malutkiej tabelki z konfiguracją więcej czasu zajmie jej usunięcie niż pozostawiona zużyje pamięci.

(co i tak jest bez sensu, tabelka zajmuje max. 100kB, czas wykonania funkcji ~1*10-8s )

 

 

W dodatku część jest obiektowo (patrz: $debug), część to luźne funkcje (patrz: doquery()), a reszta to kod strukturalny w x plikach.

 

Nie przyczepię się do mysql_*, gdyż umiejętnie użyte są znacznie szybsze od rozszerzenia mysqli czy PDO.

 

 

 

Pozdrawiam

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...