0

There are many Android to PHP type questions here, but none that seem to answer the question. I would like to send my username and password Strings from me Android app to my Drupal website usercrreate.php form, but am unsure how to do it.

In my APP I have the following:

// Set final values of the UserName and the Password to be stored
String usernameFinal = (String) usernameview.getText();
String passwordFinal = (String) passwordfield.getText();

and in my php form I have the following:

<?php

define('DRUPAL_ROOT', $_SERVER['DOCUMENT_ROOT']);

chdir(DRUPAL_ROOT);

include_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

 //This will generate a random password, you could set your own here
  $password = 'password';

  //set up the user fields
  $fields = array(
    'name' => 'username',
    'mail' => '[email protected]',
    'pass' => $password,
    'status' => 1,
    'init' => 'email address',
    'roles' => array(
      DRUPAL_AUTHENTICATED_RID => 'authenticated user',
    ),
  );

  //the first parameter is left blank so a new user is created
  $account = user_save(NULL, $fields);

  // If you want to send the welcome email, use the following code

  // Manually set the password so it appears in the e-mail.
  $account->password = $fields['pass'];

  // Send the e-mail through the user module.
  drupal_mail('user', 'register_no_approval_required', $email, NULL, array('account' => $account), variable_get('site_mail', '[email protected]'));
  ?>

My app creates both strings. Testing the php form proves successful at creating a user account is I fill in the fields with proper data, manually. Now I would like the APP to send the Strings to the php form and execute the url itself.

Got ideas?

1 Answer 1

1

In your java :

HttpClient client=new DefaultHttpClient();
HttpPost getMethod=new HttpPost("http://localhost.index.php");
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("username","12345"));
nameValuePairs.add(new BasicNameValuePair("password","54321"));
getMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs,HTTP.UTF_8));
client.execute(getMethod);

In your PHP:

$username = $_POST['username'];
$password = $_POST['password'];
Sign up to request clarification or add additional context in comments.

2 Comments

There is not a variable "client" as in the final line?
Sorry, I miss it. I've been change my answer. please check

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.