Tentando obter o MySQL para se conectar via php para o JSON, mas retornando erros conectados ao MySQL a partir de um script php

Essencialmente, estou tentando imprimir informações no JSON para que eu possa me comunicar com meu aplicativo, mas não consigo me conectar ao database MySQL de um script php por algum motivo estranho. O que poderia ser isso causa o erro: Aviso: mysql_connect () [function.mysql-connect]: Perdeu a conexão com o servidor MySQL durante a consulta em /srv/disk11/1158855/www/(myphpwebsite)/lib.php on line 13 Could Não conecte: Perda de conexão com o servidor MySQL durante a consulta.

Além disso, a linha 13 está indicando a linha em lib.php:

mysql_connect ( $dbhost, $dbuser, $dbpass) or die("Could not connect: ".mysql_error());

Também deve ser observado que este é um seguimento para uma pergunta anterior no caso de alguém querer rastrear a origem: problema do MySQL conectando-se ao site com o php .

Por fim, recebo o mesmo erro tanto de um host local quanto de um servidor remoto usando mysql

lib.php

 <? //Database Information $dbhost = "31.170.160.76"; $dbname = "testdatabase"; $dbuser = "(personalinformation)"; $dbpass = "tested123"; //Connect to database mysql_connect ( $dbhost, $dbuser, $dbpass) or die("Could not connect: ".mysql_error()); mysql_select_db($dbname) or die(mysql_error()); //executes a given sql query with the params and returns an array as result function query() { global $link; $debug = false; //get the sql query $args = func_get_args(); $sql = array_shift($args); //secure the input for ($i=0;$i$rows); } else { //error return array('error'=>'Database error'); } } //loads up the source image, resizes it and saves with -thumb in the file name function thumb($srcFile, $sideInPx) { $image = imagecreatefromjpeg($srcFile); $width = imagesx($image); $height = imagesy($image); $thumb = imagecreatetruecolor($sideInPx, $sideInPx); imagecopyresized($thumb,$image,0,0,0,0,$sideInPx,$sideInPx,$width,$height); imagejpeg($thumb, str_replace(".jpg","-thumb.jpg",$srcFile), 85); imagedestroy($thumb); imagedestroy($image); } ?> 

Index.php

  

api.php

 $msg)); exit(); } function register($user, $pass) { //check if username exists $login = query("SELECT username FROM login WHERE username='%s' limit 1", $user); if (count($login['result'])>0) { errorJson('Username already exists'); //try to register the user $result = query("INSERT INTO login(username, pass) VALUES('%s','%s')", $user, $pass); if (!$result['error']) { //success login($user, $pass); } else { //error errorJson('Registration failed'); } } } function login($user, $pass) { $result = query("SELECT IdUser, username FROM login WHERE username='%s' AND pass='%s' limit 1", $user, $pass); if (count($result['result'])>0) { //authorized $_SESSION['IdUser'] = $result['result'][0]['IdUser']; print json_encode($result); } else { //not authorized errorJson('Authorization failed'); } } ?> 

Como esta está na linha “conectar”, o servidor foi encontrado (caso contrário você recebe uma mensagem diferente), mas você não negociou seu logon.

Direto do manual :

Mais raramente, pode acontecer quando o cliente está tentando a conexão inicial com o servidor. Nesse caso, se o seu valor connect_timeout estiver configurado para apenas alguns segundos, você poderá resolver o problema aumentando-o para dez segundos, talvez mais se você tiver uma conexão muito longa ou lenta.

Se não for isso, é um problema de rede ou sua conexão foi encerrada em meio de autenticação. Verifique se o seu host mysql não possui uma validação estranha de que você vem de um IP particular (eu digo estranho, pois há mais formas padrão de gerenciá-lo do que matar o stream intermediário de autenticação) ou tente seu script PHP um servidor que está mais próximo do servidor MySQL (mais próximo em termos de velocidade da rede).

Eu descobri o que era o problema. Acontece que o meu código php mais abaixo estava em conflito com o login. É por isso que não se autenticaria em MySQL remoto múltiplo e meu próprio Localhost