0

最近、Jpmaster77 のログイン スクリプトを使い始めましたが、非常に優れていることがわかりました。しかし、今、私はそれを試してみようとしています。テーブルのユーザー名ではなく、主キーまたは AI を持つ「id」という名前の行の先頭に新しいテーブルを作成しようとしています。私の知る限り、主キーまたは AI を持つことができるテーブルは 1 つだけですが、この「id」テーブルを作成しようとすると、スクリプトが登録できなくなります。実際のエラーは発生しませんが、ログインしようとするとこのメッセージが表示されます」

申し訳ありませんが、エラーが発生し、ユーザー名 (ここに登録しようとしているユーザー名) の登録を完了できませんでした。
後でもう一度やり直してください。」

これは、これを変更しようとすると発生します

CREATE TABLE users (
 username varchar(30) primary key,
 password varchar(32),
 userid varchar(32),
 userlevel tinyint(1) unsigned not null,
 email varchar(50),
 timestamp int(11) unsigned not null
);

これに:

CREATE TABLE users (
 id int(11) NOT NULL auto_increment,
 username varchar(30),
 password varchar(32),
 userid varchar(32),
 userlevel tinyint(1) unsigned not null,
 email varchar(50),
 timestamp int(11) unsigned not null
);

このエラーを受け取ったことから、SQL ではなく私のコードに関係があると思います。登録に影響する 3 つのページ、register.php、process.php、および session.php があります。この 3 つすべてへのリンクを投稿して、誰もが「http://pastebin.com/5efyZdgF」を確認できるようにします (エラー、最初の register.php のスペルを間違えました)

私はこの仕事をする機会がなかったので、誰かが助けてくれるなら、私はとても感謝しています. 私は PHP をよく理解しているので、誰かが少なくとも私のエラーを指摘できれば、おそらくそこから修正することができます。

4

2 に答える 2

0

私は MySQL を扱っていないので、ドキュメントをざっと見てみました。構文は、私が使用している redbrick に似ているようです。

create table myTable (
myTableId int not null auto_increment
, more fields
, constraint myTablePk primary key (myTableId)
于 2013-04-06T23:10:08.657 に答える
0

これは、A_I が整数 (int) である必要があるためです。

これは、前の表に基づいて整数が増加するためです..これがvarcharまたはその他の場合 (数値に関連付けられていない場合)、前の表に基づいて文字の値がどのように増加しますか? それはできません..

AI を使用して、テーブル内の重複行を最小限に抑えます

于 2013-04-06T22:42:49.993 に答える