PHP ressources ID de rapports

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Août 7th, 2010, 5:39 pm

Quand je charge ma page il rend compte de Resource id #653 en haut de la page. Ma page fonctionne comme il faut et je l'ai cherché et cherché dans mon script pour voir si un mysql_query (mysql_fetch_array, mysql_num_rows, etc) appel est gâcher, mais tout mon travail requêtes et aucun d'entre eux dépendent de toutes les variables. Je suppose que j'ai besoin de 1 sur 2 choses.

1. Puis-je désactiver en toute sécurité que les ressources le rapport ID dans le fichier php.ini?

2. Est-ce que le numéro ID de ressource me dire tout ce qui peut m'aider à repérer ce qui la requête (s) sont gâcher?


Id préfère ne pas fournir le code encore causer des theres une tonne de celui-ci, mais je me demande si theres une méthodologie de Nice que quelqu'un a de fixation ou d'obtenir ce qui l'entoure.
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Août 7th, 2010, 5:39 pm

  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Août 10th, 2010, 12:16 pm

Sa va être l'une des fonctions MySQL qui retourne une ressource de type "" qui est le coupable.

Par exemple, les rendements mysql_connect une «ressource» de type.

Quote:
ressource mysql_connect ([string $ server = ini_get ("mysql.default_host") [, string $ username = ini_get ("mysql.default_user") [, string $ password = ini_get ("mysql. default_password ") [, bool new_link $ = false [, int $ client_flags = 0 ]]]]])


Toute autre fonction MySQL qui retourne une ressource plutôt qu'un type de données PHP peut également être la cause.

mysql_query est un autre exemple.

Quote:
ressource mysql_query ($ query string [, resource $ link_identifier])


"Resource id #nn "est ce que vous obtenez si vous convertissez une« ressource »à une chaîne, ce qui se produit lorsque vous essayez d'imprimer le fichier / etc de la ressource.

Ce que je pense qui se passe, c'est que vous pouvez être attribuant le résultat de l'une de ces ressources fonctions renvoyant à une variable quelque part, par exemple,

PHP Code: [ Select ]
$conn = mysql_connect(...);


Ensuite, quelque part le long de la ligne de la variable est en cours d'impression. Peut-être à des fins de débogage que quelqu'un manquer lors d'un nettoyage.

-

Ce que je voudrais faire est d'aller dans la liste des fonctions MySQL et de recueillir les noms de tha de tout ce qui renvoie un type de ressource. Cela devrait limiter les suspects considérablement.

Alors, je grep / findstr les scripts des fichiers la recherche de ces noms de fonctions. Faire en sorte d'inclure les noms de fichiers et les numéros de ligne dans mon grep sortie findstr / afin que je puisse aller directement à l'endroit et l'inspecter.

Si vous redirigez la sortie de votre recherche grep findstr / vers un autre fichier, vous aurez une belle liste des places dans le code, vous pouvez inspecter un par un. Vous serez vraisemblablement en mesure d'exclure un bon nombre d'entre eux juste en regardant la ligne dans le grep sortie findstr /.
Strong with this one, the sudo is.
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Août 12th, 2010, 9:29 am

travailler. Ce serait bien si la ressource id effectivement voulu dire quelque chose. Quoi qu'il en soit, Ill voir ce que je peux trouver.
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Août 12th, 2010, 9:52 am

L'ensemble du script s'exécute à l'intérieur d'une fonction. N variables se fait l'écho / imprimés, une seule variable à la fin est retourné. Est-ce que des ressources doivent être imprimées / écho pour être diffusées?
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Août 12th, 2010, 10:26 am

Quote:
Ensuite, quelque part le long de la ligne de la variable est en cours d'impression. Peut-être à des fins de débogage que quelqu'un manquer lors d'un nettoyage.


J'ai réussi à le fixer. Une ressource a été annexée à obtenir ma variable de retour. Une fois que vous avez dit ça devient imprimés alors que réellement rétréci vers le bas pour moi. Je pense que lorsque l'application a été construite la fonction a été simple et a renvoyé un résultat R $ sens directement à partir de l'unique, simple requête. Une fois de plus les requêtes ont commencé à être ajouté, les requêtes de nouvelles conservé la variable R $ pour leur résultat de mysql_query, mais à la fin de la fonction de calculs ont été effectués et mis en forme et est retourné dans l'ancien, conservé variable $ r .= sorte que tous les ressources se joint à cette dernière tranche de R.

En fait, Im assez moi-même du mal de la réutilisation des variables cause Ive a appris que diminue l'utilisation de mémoire d'un script php et au fil des ans il a empirer, mais c'est la premières fois sa me mordre. Quand j'ai commencé à Id programmation toujours créer un nouveau nom de variable unique pour tout. Bien sûr, cela m'a taxer d'avoir à trouver des noms de variables et une douleur pour les maintenir dans l'ordre. Eh bien, ce pourrait être un argument contre la réutilisation des variables variables en particulier requête, mais ne fonctionne toujours pas comparer avec les arguments Ive lire au cours des années à les réutiliser. Je pensais youd aiment cette cause, il semble que vous êtes toujours intéressés à ce que les méthodes / fonctions de courir plus vite, mieux, etc par certains de vos autres postes Ive lire.

Merci joebert. Son tout arrangé.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Août 12th, 2010, 1:52 pm

Im pas tout à fait sûr où la ressource ID vient. Ma meilleure supposition est que chaque appel à une ressource du scrutin incrémente un compteur et thats d'où il vient.

Sens, la connexion initiale serait l'utilisation #1, la première requête serait de retour #2. Une requête dans une boucle pourrait sauter le compteur jusqu'à #100 avant il arrivé à la ressource suivante retour de fonction.

Je ne sais pas si. J'ai pris un coup d'œil rapide dans la source de PHP pour "Resource id" pensant que je pourrais trouver un masque de style printf. J'ai trouvé que du vide si. Il sera sans doute utile d'examiner dans un de ces jours.
Strong with this one, the sudo is.

Afficher de l'information

  • Total des messages de ce sujet: 6 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 126 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC