2016-08-05 11 views
-2

In this picture, das Protokoll ist print hübsch! aber in der Einheit ist der Ausgang falsch. Wie kann ich es lösen?Einheit + php + Datenbank Datenausgabe Problem

Und das ist meine Quelle:

private void Awake() 
    { 
     info = new Dictionary<string, string>(); 

    } 


    private IEnumerator Start() 
    { 

     WWW dash = new WWW("http://localhost/test.php"); 
     yield return dash; 

     string[] Separators = new string[] { "\n" }; 
     string[] lines = dash.text.Split(Separators, System.StringSplitOptions.RemoveEmptyEntries); 

     info.Clear(); 
     for(int i=0; i<lines.Length; i++) 
     { 
      GameObject tmp = Instantiate(scorepre); 
      string[] parts = lines[i].Split(','); 
      string Name = parts[1]; 
      string Detail = parts[2]; 
      info.Add(Name, Detail); 
      Debug.Log(Name + " - " + Detail); 

      named.GetComponent<Text>().text = Name; 
      detailed.GetComponent<Text>().text = Detail; 

      tmp.transform.SetParent(infoParent); 
     } 
+0

Wurden die benannten und detaillierten Spielobjekte definiert? – ColmanJ

+0

ja, ich habe definiert. –

+0

privates Wörterbuch info; public Transform infoParent; öffentliche GameObject scorespre; public GameObject named; public GameObject detailliert; Das sind alle meine definiert. –

Antwort

1

die Namen und detailliertes Objekt scheint immer auf das gleiche Objekt zu verweisen.

bearbeiten Nach dem Umdenken, wie Sie Ihre Objekte verknüpft haben, denke ich, die Reihenfolge des Codes ist falsch.

private IEnumerator Start() 
{ 
    WWW dash = new WWW("http://localhost/test.php"); 
    yield return dash; 

    string[] Separators = new string[] { "\n" }; 
    string[] lines = dash.text.Split(Separators, System.StringSplitOptions.RemoveEmptyEntries); 

    info.Clear(); 
    for(int i=0; i<lines.Length; i++) 
    {   
     if (i > 0) // only copy the object after the first text is set 
     { 
      GameObject tmp = Instantiate(scorepre); 
      tmp.transform.SetParent(infoParent); 
     } 

     string[] parts = lines[i].Split(','); 
     string Name = parts[1]; 
     string Detail = parts[2]; 
     info.Add(Name, Detail); 
     Debug.Log(Name + " - " + Detail); 

     //first change the text 
     named.GetComponent<Text>().text = Name; 
     detailed.GetComponent<Text>().text = Detail; 
    } 
} 
+0

Entschuldigung. Ich bin so spät dran. Vielen Dank für Ihre Antwort!!. aber es funktioniert nicht ... –

+0

Ich habe einen Fehler. Der Quellcode ist perfekt für mich !!!! Vielen Dank –

+0

@lukedavis funktioniert diese Lösung dann? – ColmanJ