Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] Server has gone away
gg1985
post 7.07.2009, 09:10:07
Post #1





Grupa: Zarejestrowani
Postów: 174
Pomógł: 3
Dołączył: 23.02.2008

Ostrzeżenie: (0%)
-----


Witam

Z tego co się zorientowałem w temacie to ten komunikat oznacza, że zapytanie wykonuje się zbyt długo. Tabelka ma 50 rekordów tylko. Wygląda to tak:

Kod
function select() {
    require_once 'connect2waliduj.php';
    echo '<ul>
    ';
    for ($i=1;$i<18;$i++) {
        $sql2 = 'select count(id) from `waliduj`';
        $wykonaj2 = mysql_query($sql2) or die('Zapytanie: '.$sql.' --- błąd: '.mysql_error());
        $row2 = mysql_fetch_array($wykonaj2);
        $val = rand(1,$row2[0]);
        $val = search_table($tbl, $val);
        $tbl[$i] = $val;
        $sql1 = 'select link, id from `waliduj`where id = '.$val;
        $wykonaj1 = mysql_query($sql1) or die('Zapytanie: '.$sql.' --- błąd: '.mysql_error());
        $row = mysql_fetch_array($wykonaj1);
        echo '<li><a href="http://strona.pl/'.$row['id'].'.php">'.$row['link'].'</a></li>
    ';
    }
    echo '</ul>
    ';
}
/*czy się nie powtórzyło*/
function search_table($tab, $val) {
    for ($i=1;$i<=count($tab);$i++)
        if ($tab[$i] == $val) return $val+=1;
    return $val;
}


Proszę o jakieś sugestie

Ten post edytował gg1985 7.07.2009, 11:03:17


--------------------
Go to the top of the page
+Quote Post
golaod
post 7.07.2009, 10:57:46
Post #2





Grupa: Zarejestrowani
Postów: 419
Pomógł: 42
Dołączył: 12.08.2008
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Wybacz mi ale jak można wybierać z tabeli usera robiąc WHERE ID = rand(1,count(ilosc_userow))
No ok jest 20 userów więc count wynosi 20 czyli losowa z przedzialu 1 do 20. A co jak userzy mają id 30> To kogo wybierzesz ?
Daj echo $sql i sprawdź czy aby na pewno masz poprawne zapytania.
Go to the top of the page
+Quote Post
Pawel_W
post 7.07.2009, 13:01:48
Post #3





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


ten błąd wcale nie oznacza, że w zapytaniu jest błąd, ja otrzymałem taki sam error wtedy, gdy baza danych była wyłączona

spróbuj zalogować się w phpmyadmin
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 09:53