2012-06-18 5 views
0
<?php 
if(isset($_POST['btnSubmit']) and $_GET['action'] == "Add") 
{ 
    $Users->copyPostData(); 
    $Users->_password(md5($_POST[password])); 
    $Users->_status(0); 
    $Users->_apikey(md5("[email protected]:".$_POST[uname].":@STEP")); 

    $userNum = $Users->checkUserExist($Users->_username()); 
    $userEmail = $Users->checkEmailExist($Users->_email()); 
    if(($userNum == '0' || $userNum == '') && ($userEmail == '0' || $userEmail == '')) { 

    $randomVar = generateRandomNo(8); 
    $Users->_activationcode($randomVar); 

моя эта строка кода генерирует API-ключ и сохраняет его в моей базе данных. мое имя таблицы - USERS .. но ключ api, который генерирует эта строка кода, одинаковый для всех пользователей ... Я хочу уникальный ключ API для всех пользователей ... можете ли вы, пожалуйста, помочь?уникальный ключ API в php

$Users->_apikey(md5("[email protected]:".$_POST[uname].":@STEP")); 
+1

Использует ли '$ _POST ['uname']' что-нибудь уникальное? – deceze

+0

Я думаю, что '$ _POST [uname]' будет отличаться каждый раз, поэтому как он может генерировать один и тот же ключ каждый раз. Вы должны сначала попробовать с '$ _POST ['uname']' вместо '$ _POST [uname]'. Кажется, что вы пропустили котировки – Sanjay

+0

Я добавил котировки, но без разницы –

ответ

2

Вы создаете md5 строки и единственную причину его же для всех пользователей, потому что строка является одинаковой для всех.

проверка содержание $_POST['uname']

+0

Я добавил котировки, но без разницы –

+0

Проверьте содержимое. – Josnidhin

2

Вы должны использовать uniqid(), чтобы создать уникальный ключ! Кстати, это встроенная функция php.

Смежные вопросы