Probléme de concaténation dans un string
Fermé
nadriel
-
Modifié par Whismeril le 19/03/2015 à 07:26
zobbo Messages postés 9 Date d'inscription jeudi 16 septembre 2010 Statut Membre Dernière intervention 19 mars 2015 - 19 mars 2015 à 14:15
zobbo Messages postés 9 Date d'inscription jeudi 16 septembre 2010 Statut Membre Dernière intervention 19 mars 2015 - 19 mars 2015 à 14:15
A voir également:
- Probléme de concaténation dans un string
- Cannot access offset of type string on string - Forum PHP
- Uninitialized string offset ✓ - Forum PHP
- Concaténation matlab - Astuces et Solutions
- Include string - Forum C++
- Illegal string offset ✓ - Forum PHP
4 réponses
Whismeril
Messages postés
18279
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 mars 2023
888
19 mars 2015 à 07:51
19 mars 2015 à 07:51
Bonjour, messageBox n'est pas un outil de débugage.
Pour ce code
Je mets un point d'arrêt à la ligne 3 (Click Droit / Point d'arrêt, ou F9)
Quand je lance l'exécution, le programme s'arrête avant de lire cette instruction.

Si je survole la variable avec ma souris, je voie qu'elle est null

Si j'ai besoin de voir le contenue de cette variable tout au long de mon débugage je la mets en espion (Click Droit / Ajouter un Espion) qui viendra s'afficher sous la fenêtre de code

Je n'ai plus qu'a exécuter pas à pas (avec F10 F11 ou ces flèches
Et regarder comment ça évolue

Dans ce débuggage la concaténation (avec le code de gravgun) c'est correctement déroulée.
Pour ce code
private void TestNadriel()
{
string element = "2";
string sql = string.Format("UPDATE client SET valid_client = '1' WHERE valid_client = '0' AND id_client = '{0}'", element);
}
Je mets un point d'arrêt à la ligne 3 (Click Droit / Point d'arrêt, ou F9)

Quand je lance l'exécution, le programme s'arrête avant de lire cette instruction.

Si je survole la variable avec ma souris, je voie qu'elle est null

Si j'ai besoin de voir le contenue de cette variable tout au long de mon débugage je la mets en espion (Click Droit / Ajouter un Espion) qui viendra s'afficher sous la fenêtre de code

Je n'ai plus qu'a exécuter pas à pas (avec F10 F11 ou ces flèches

Et regarder comment ça évolue

Dans ce débuggage la concaténation (avec le code de gravgun) c'est correctement déroulée.
ElementW
Messages postés
4764
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 295
18 mars 2015 à 22:12
18 mars 2015 à 22:12
'lut
sql = "UPDATE client SET valid_client = '1' WHERE valid_client = '0' AND id_client = '{0}'", element;C'est pas correct, à mon avis ça ne compile même pas. As-tu tenté avec String.Format?
sql = String.Format("UPDATE client SET valid_client = '1' WHERE valid_client = '0' AND id_client = '{0}'", element);
Oui pareil avec String.Format :s
ElementW
Messages postés
4764
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 295
18 mars 2015 à 22:16
18 mars 2015 à 22:16
Et es-tu sur que
elementn'est pas vide?
zobbo
Messages postés
9
Date d'inscription
jeudi 16 septembre 2010
Statut
Membre
Dernière intervention
19 mars 2015
21
Modifié par Whismeril le 19/03/2015 à 16:55
Modifié par Whismeril le 19/03/2015 à 16:55
Merci pour le petit rappel au niveau du mode pas a pas et des espions j'en avais besoin ;)
j'ai trouvé une solution
etant donnée que ma requête ce situe dans un if verifiant une checkbox j'ai pu recupere la valeu id comme ceci
ça fonctionne mais il reste un problème que je dois résoudre : cela ne fonctionne pas si l'utilisateur coche plusieurs case afin de validé un groupe de clients
voici a quoi ressemble mon appli : les nombres a coté des checkBox sont bien les bon id client ^^

j'ai trouvé une solution
etant donnée que ma requête ce situe dans un if verifiant une checkbox j'ai pu recupere la valeu id comme ceci
if (_e.Checked)
{
string sql = _e.Text; // Récupération de id_client
try
{
MySqlConnection conn = new MySqlConnection("Database='ticketingv3';server='127.0.0.1';User Id='root';pwd=''");
MySqlCommand update = conn.CreateCommand();
sql = String.Format("UPDATE client SET valid_client = '1' WHERE valid_client = '0' AND id_client = '{0}'", sql);
update.CommandText = sql; //variable contenant id_client
conn.Open();
listView1.Items[compteur].SubItems[2].Text = "true";
MySqlDataReader reader = update.ExecuteReader();
}
catch
{
MessageBox.Show("Erreur");
}
}
ça fonctionne mais il reste un problème que je dois résoudre : cela ne fonctionne pas si l'utilisateur coche plusieurs case afin de validé un groupe de clients
voici a quoi ressemble mon appli : les nombres a coté des checkBox sont bien les bon id client ^^
