2013-03-21 3 views
0

Не знаю, как это сказать, но я использовал mysql_insert_id() в течение многих лет. Недавно я включил его в свои веб-приложения и работал хорошо, я успешно получил 50 транзакций и был счастлив. Внезапно все мои транзакции приходят с идентификаторами равными 0, я Google'd вокруг и читал что-то о постоянном соединении, установленном в true? Я просто хочу, чтобы я удостоверился, что я даю правильную информацию моему парню сетевого сервера, бог знает, всякий раз, когда что-то меняется, они не сообщают мне, я только узнаю, когда внезапно ломается мой код.mysql_insert_id() внезапно перестает работать

есть ли другая функция для использования, кроме mysql_insert_id(), в моем коде PHP/MySQL? только для тех, кто хочет видеть код здесь является то, что у меня есть: я не включая «ид», как это «автоматическое приращение не нулевой первичный ключ, и т.д.»

<?php 
$db_host2 = 'localhost'; 
$db_user2 = 'different'; 
$db_pass2 = 'different'; 
$db_name2 = 'different'; 
$conn2 = &NewADOConnection('mysqlt'); 
$db2 = $conn2->Connect($db_host2,$db_user2,$db_pass2,$db_name2); 
if($conn2->isConnected()==false) 
    die("Could not connect to the database. Please try again in the next few minutes."); 


    $db_host = 'localhost'; 
    $db_user = 'admin'; 
    $db_pass = 'pass'; 
    $db_name = 'name'; 
    include_once('adodb/adodb.inc.php'); 
    define('ADODB_FETCH_ASSOC',2); 
    $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; 
    $conn = NewADOConnection('mysqlt'); 
    $db = $conn->Connect($db_host,$db_user,$db_pass,$db_name); 
    if($conn->isConnected()==false) 
     die("Could not connect to the database. Please try again in the next few minutes."); 
     $q="insert into tableA(name,address,phone) values ('','','')" 
     $rs=$conn->execute($q); 
     $myid=mysql_insert_id(); 
     ?> 
+0

вы используете библиотеку MySQL в вашем $ классе мошенника? – datasage

+0

yes include_once ('adodb/adodb.inc.php'); – NULL

+1

adodb можно настроить для соединения с mysql, mysqli или pdo. Ваш код будет работать, только если вы подключаетесь к драйверу mysql. – datasage

ответ

0

Вам просто нужно 1 пример конфигурации:

// database config 
$DB_TYPE  = "mysql"; 
$DB_HOST  = "xxxxx"; 
$DB_USER  = "xxxx"; 
$DB_PWD  = "xxxx"; 
$DB_NAME  = "xxx"; 

затем использовать последнюю вставку ID для:

$db->Insert_ID 
Смежные вопросы