json php file for mobile device sdk login

orbicos4402

New Member
YetiShare User
Nov 8, 2014
21
0
0
hello,

Could someone create a .json php file that connects to the mysql db for the yetishare script, which will allow users to login. If any admins want to work on mobile api, please contact me. Thanks!

an example could be {"success":0,"error_message":"Username and/or password is invalid."}

Code:
<?php
 
// Create connection
$con=mysqli_connect("localhost","user","password","db");
 
// Check connection
if (mysqli_connect_errno())
{
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
 
// This SQL statement selects ALL from the table 'Locations'
$sql = "SELECT * FROM users";
 
// Check if there are results
if ($result = mysqli_query($con, $sql))
{
	// If so, then create a results array and a temporary one
	// to hold the data
	$resultArray = array();
	$tempArray = array();
 
	// Loop through each row in the result set
	while($row = $result->fetch_object())
	{
		// Add each row into our results array
		$tempArray = $row;
	    array_push($resultArray, $tempArray);
	}
 
	// Finally, encode the array to JSON and output the results
	echo json_encode($resultArray);
}
 
// Close connections
mysqli_close($con);
?>
 

orbicos4402

New Member
YetiShare User
Nov 8, 2014
21
0
0
let me know if someone could work with this
Code:
<?php

header('Content-type: application/json');
if($_POST) {
	$username   = $_POST['username'];
	$password   = $_POST['password'];

	if($username && $password) {

			$db_name     = 'db';
			$db_user     = 'user';
			$db_password = 'password';
			$server_url  = 'localhost';

			$mysqli = new mysqli('localhost', $db_user, $db_password, $db_name);

			/* check connection */
			if (mysqli_connect_errno()) {
				error_log("Connect failed: " . mysqli_connect_error());
				echo '{"success":0,"error_message":"' . mysqli_connect_error() . '"}';
			} else {
				if ($stmt = $mysqli->prepare("SELECT username FROM users WHERE username = ? and password = ?")) {

					/* bind parameters for markers */
					$stmt->bind_param("ss", $username, md5($password));

					/* execute query */
					$stmt->execute();

					/* bind result variables */
					$stmt->bind_result($id);

					/* fetch value */
					$stmt->fetch();

					/* close statement */
					$stmt->close();
				}

				/* close connection */
				$mysqli->close();

				if ($id) {
					error_log("User $username: password match.");
					echo '{"success":1}';
				} else {
					error_log("User $username: password doesn't match.");
					echo '{"success":0,"error_message":"Invalid Username/Password"}';
				}
			}
	} else {
		echo '{"success":0,"error_message":"Invalid Username/Password."}';
	}
}else {
	echo '{"success":0,"error_message":"Invalid Data."}';
}
?>
 

ysmods

New Member
Jan 29, 2013
860
1
0
UK
www.ysmods.com
Try something like:

Code:
<?php

header('Content-type: application/json'); 
include_once('core/includes/master.inc.php');
 
if($_REQUEST) 
{
	// clear any expired IPs
    bannedIP::clearExpiredBannedIps();

    // do login
    $loginUsername = trim($_REQUEST['username']);
    $loginPassword = trim($_REQUEST['password']);

    // check user isn't banned from logging in
    $bannedIp = bannedIP::getBannedIPData();
    if ($bannedIp)
    {
        if ($bannedIp['banType'] == 'Login')
        {
			echo '{"success":0,"error_message":"You have been temporarily blocked from logging in due to too many failed login attempts."}';
        }
    }

    // initial validation
	if (!strlen($loginUsername))
	{
		// log failure
		Auth::logFailedLoginAttempt(coreFunctions::getUsersIPAddress(), $loginUsername);
		echo '{"success":0,"error_message":"Please enter your username."}';
	}
	elseif (!strlen($loginPassword))
	{
		// log failure
		Auth::logFailedLoginAttempt(coreFunctions::getUsersIPAddress(), $loginUsername);
		echo '{"success":0,"error_message":"Please enter your password."}';
	}

	$rs = $Auth->login($loginUsername, $loginPassword);
	if ($rs)
	{
		// successful login
		echo '{"success":1}';
	}
	else
	{
		// login failed
		echo '{"success":0,"error_message":"Your username and/or password are invalid."}';
	}
}
else 
{
	echo '{"success":0,"error_message":"Invalid Data."}';
}

?>
 

orbicos4402

New Member
YetiShare User
Nov 8, 2014
21
0
0
Hi guys!

I'm glad to announce that with my code and ysmods, iOS has acheived successful login!

Ok, now ysmods, can you please make a sign up version?

thanks!

something like this:
Code:
<?php

header('Content-type: application/json');
if($_POST) {
	$username   = $_POST['username'];
	$password   = $_POST['password'];
	$c_password = $_POST['c_password'];

	if($_POST['username']) {
		if ( $password == $c_password ) {

			$db_name     = 'db';
			$db_user     = 'user';
			$db_password = 'pass';
			$server_url  = 'localhost';

			$mysqli = new mysqli('localhost', $db_user, $db_password, $db_name);

			/* check connection */
			if (mysqli_connect_errno()) {
				error_log("Connect failed: " . mysqli_connect_error());
				echo '{"success":0,"error_message":"' . mysqli_connect_error() . '"}';
			} else {
				$stmt = $mysqli->prepare("INSERT INTO users (username, password) VALUES (?, ?)");
				$password = md5($password);
				$stmt->bind_param('ss', $username, $password);

				/* execute prepared statement */
				$stmt->execute();

				if ($stmt->error) {error_log("Error: " . $stmt->error); }

				$success = $stmt->affected_rows;

				/* close statement and connection */
				$stmt->close();

				/* close connection */
				$mysqli->close();
				error_log("Success: $success");

				if ($success > 0) {
					error_log("User '$username' created.");
					echo '{"success":1}';
				} else {
					echo '{"success":0,"error_message":"Username Exist."}';
				}
			}
		} else {
			echo '{"success":0,"error_message":"Passwords does not match."}';
		}
	} else {
		echo '{"success":0,"error_message":"Invalid Username."}';
	}
}else {
	echo '{"success":0,"error_message":"Invalid Data."}';
}
?>
I want to build an iOS template for all yetishare users. Let me know who wants to help!

I need to convert all the files from phpmyadmin(mysql) into json so I can parse it into the app.

Let me know. thanks!

please email or pm me for private dissucssion.