• 21-01-2007, 01:35:58
    #1
    üye olurken böyle bir hata veriyor

    Warning: mysql_insert_id() [function.mysql-insert-id]: A link to the server could not be established in /home/.beeswax/sadasd/asda.com/modules/mod_register.php on line 46
    Sorry, but there is a problem with our scripts!
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 1' at line 1
    UPDATE members SET highest_rank=2015 WHERE id= LIMIT 1


    mod_register.php: 33. satırdan itibaren.
    if ( isset( $error ) )
    		$message = "<strong>Error</strong>: ".$error;
    	else
    	{
    		$username = trim(stripslashes($_POST["username"]));
    		$password = stripslashes($_POST["password"]);
    		$email = strtolower(trim(stripslashes($_POST["email"])));
    		$username = preg_replace("/\s{2,}/", ' ', $username);
    		$db->query( "INSERT INTO members ( username, password, email, ".
    					"joined, last_updated ) VALUES ( '".
    					$db->escape( $username )."', '".md5($password)."', '".
    					$db->escape( $email )."', UNIX_TIMESTAMP(), UNIX_TIMESTAMP() )" );
    		$insert_id = mysql_insert_id();
    		$db->query( "SELECT * FROM members" );
    		$rank = $db->countRows();
    	$db->query( "UPDATE members SET highest_rank=".$rank." WHERE id=".$insert_id." LIMIT 1" );
    		$db->query( "UPDATE sessions SET member_id=".$insert_id.", admin='0' WHERE id='".
    					session_id()."' LIMIT 1" );
    		$ref = htmlentities( stripslashes( $_POST["ref"] ) );
    		$ref = empty( $ref )? "/" : $ref;
    		?>
    nasıl düzeltebilirim
  • 21-01-2007, 03:41:30
    #2
    Kurumsal PLUS
    emin değilim ama;
                        session_id()."' LIMIT 1" );
    bu kısmı;
                        session_id()."' LIMIT 0,1" );
    olarak değiştirip dener misin?
  • 21-01-2007, 04:50:08
    #3
    Misafir
    bartuc orda sorun yok
    çünkü
    WHERE id= LIMIT 1

    id ye bişiyleri yazamamış insert_id yi alamadı diye.

    ya insert etmiyor yada mysql bağlantısında problem var.

    mysql bağlantısı sekteye uğruyor ki insert id yi alamıyor.
  • 21-01-2007, 05:10:52
    #4
    Kurumsal PLUS
    id olarak session_id alıyor
  • 21-01-2007, 06:02:11
    #5
    Misafir
    yooo sql çıktısına göre

    $db->query( "UPDATE members SET highest_rank=".$rank." WHERE id=".$insert_id." LIMIT 1" );

    bunu alıyor.
  • 21-01-2007, 14:34:26
    #6
    Bartuc teşekkürler ama verdiğin şekilde çalışmadı başka önerisi olan varmı ?
  • 21-01-2007, 14:45:40
    #7
    Misafir
    bu koddan önce biryerlerde mysql_close yada $db->close gibi birşey varmı ?
    sanki mysql kapatılıyor gibi yada başka bişi
    bi bak bakalım
    class dosyasında mysql in

    function insert_id() {
    return @mysql_insert_id($this->link_id);
    }
    böyle birşeyler varmı

    varsa ona uygun kullanalım. genelde class.mysql.php gibi isimleri olur class dosyalarının