2014-03-04 14 views
0

我有這個代碼將驗證用戶輸入密碼(密碼已經由密碼定義)。現在,如果密碼是正確的,那麼他將轉到下一個在數據庫上添加內容的進程。除了這個錯誤之外,過程已經很好。提前致謝。希望你能幫我解決這個:(這條線上有多個標記。 - 令牌上的語法錯誤

package info.androidhive.slidingmenu; 

import info.androidhive.slidingmenu.MainActivity; 
import info.androidhive.slidingmenu.ObjectStudent; 
import info.androidhive.slidingmenu.DatabaseFragment; 
import info.androidhive.slidingmenu.R; 
import info.androidhive.slidingmenu.TableControllerStudent; 
import android.R.string; 
import android.app.Fragment; 
import android.os.Bundle; 
import android.text.Editable; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.view.View.OnClickListener; 
import android.app.AlertDialog; 
import android.content.Context; 
import android.content.DialogInterface; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.RelativeLayout; 
import android.widget.Toast; 

public class DatabaseFragment extends Fragment 
{ 
    public DatabaseFragment(){} 

    Context thiscontext; 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
    { 
     thiscontext = container.getContext(); 
     RelativeLayout mRelativeLayout = (RelativeLayout) inflater.inflate(R.layout.fragment_database, 
      container, false); 
     Button buttonCreateLocation = (Button) mRelativeLayout.findViewById(R.id.buttonCreateStudent); 
     buttonCreateLocation.setOnClickListener(new OnClickListener() 
     { 
      public void onClick(View views) 
      { 
       final Context context = views.getContext(); 
       LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
       View formElementsView = inflater.inflate(R.layout.login_input_form, null, false); 

       final EditText usernamea = (EditText) formElementsView.findViewById(R.id.username); 
       final EditText passworda = (EditText) formElementsView.findViewById(R.id.password); 

       new AlertDialog.Builder(context) 
        .setView(formElementsView) 
        .setTitle("Login") 
        .setPositiveButton("Submit", 
         new DialogInterface.OnClickListener() 
         { 
          public void onClick(DialogInterface dialog, int id) 
           { 
            Editable password = null; 
            if (passworda.getText()== password) 
            { 
             @Override 
             public void onClick(View view) //THE ERROR IS LOCATED HERE 
             { 
              final Context context = view.getContext(); 

              LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
              View formElementsView = inflater.inflate(R.layout.student_input_form, null, false); 

              final EditText editTextStudentFirstname = (EditText) formElementsView.findViewById(R.id.editTextStudentFirstname); 
              final EditText editTextStudentEmail = (EditText) formElementsView.findViewById(R.id.editTextStudentEmail); 
              final EditText editTextStudentCategory = (EditText) formElementsView.findViewById(R.id.editTextStudentCategory); 

              new AlertDialog.Builder(context) 
               .setView(formElementsView) 
               .setTitle("Create Translation") 
               .setPositiveButton("Add", 
                new DialogInterface.OnClickListener() 
                { 
                 public void onClick(DialogInterface dialog, int id) 
                 { 
                  String studentFirstname = editTextStudentFirstname.getText().toString(); 
                  String studentEmail = editTextStudentEmail.getText().toString(); 
                  String studentCategory = editTextStudentCategory.getText().toString(); 

                  ObjectStudent objectStudent = new ObjectStudent(); 
                  objectStudent.firstname = studentFirstname; 
                  objectStudent.email = studentEmail; 
                  objectStudent.category = studentCategory; 

                  boolean createSuccessful = new TableControllerStudent(context).create(objectStudent); 
                  if(createSuccessful) 
                  { 
                   Toast.makeText(context, "Student information was saved.", Toast.LENGTH_SHORT).show(); 
                  } 
                  else 
                  { 
                   Toast.makeText(context, "Unable to save student information.", Toast.LENGTH_SHORT).show(); 
                  } 

                  ((MainActivity) context).countRecords(); 
                  ((MainActivity) context).readRecords(); 

                  dialog.cancel(); 
                 } 
                }).show(); 
             } 
            } 
            else 
            { 
             dialog.cancel(); 
            } 
           }  
         }); 
       return mRelativeLayout; 
      } 
     }); 
    } 
} 

這是數據庫

public class DatabaseHandler extends SQLiteOpenHelper { 

private static final int DATABASE_VERSION = 1; 
protected static final String DATABASE_NAME = "StudentDatabase"; 

public DatabaseHandler(Context context) { 
    super(context, DATABASE_NAME, null, DATABASE_VERSION); 
} 

@Override 
public void onCreate(SQLiteDatabase db) { 

    String sql = "CREATE TABLE students " + 
      "(id INTEGER PRIMARY KEY AUTOINCREMENT, " + 
      "firstname TEXT, " + 
      "username TEXT, " + 
      "password TEXT, " + 
      "email TEXT, " 
      + "category TEXT) "; 

    db.execSQL(sql); 

} 

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 

    String sql = "DROP TABLE IF EXISTS students"; 
    db.execSQL(sql); 

    onCreate(db); 
} 

} 
+2

在發佈代碼,不發佈的一切,只有什麼是相關的。 –

+0

對不起:(這裏是新的 –

+0

在這段代碼中哪裏出現錯誤? – GhostDerfel

回答

0
multiple markers at this line 

此異常的SQLite拋出異常,你應該張貼您的數據庫填充碼,藏漢作爲logcat的輸出;)

歡迎光臨!

編輯:你應該總是ASLO處理,如果從句用字符串類型是這樣的:.equals("")代替:==

+0

sir.i已經添加了數據庫部分:(沒有logcat,因爲那裏有錯誤 –

+0

我也改變了.equals(「」) –

相關問題