所以我遇到了一個令人困惑的(程序員造成的)錯誤,我是程序員。數據庫映像然後更新=錯誤,更新然後圖像=成功!爲什麼?
我創建了一個包含用戶配置文件的網站。用戶配置文件包含許多字段和圖像。圖像上傳得很好。首先它被轉換成適合某個區域。
...
//我將圖像上傳到數據庫。
imageConverter-> loadImage($ _ FILE ... blah balh)。
...
當用戶決定改變他的信息時,他也有機會改變他的照片。編輯配置文件過程完全相同,作爲配置文件啓動過程。唯一的區別是我檢查他/她每次更新一個字段,並更改數據庫中的特定行(顯然這可以做到最佳,但首先我希望它工作:))
迷惑一部分是這個。當我編輯個人資料信息時,訂單就像這樣。 我使用MYSQLI($ this-> mysqli-> query($ query))。
這些在數據庫中編輯,如果他們是CHANGED
- 1姓名
- 2姓氏
- 3密碼
- 4各種偏好(複選框/單選按鈕)。
- 5電子郵件
- 6個人資料圖片。
- 7更新會話信息並向數據庫查詢最新更新信息。
現在#7返回假(SELECT * FROM USERSINFO)
現在,如果i開關動作的順序。
- 1姓名
- 2姓氏
- 3密碼
- 4個各種偏好(複選框/單選按鈕)。
- 5電子郵件
- 6更新會話信息並向數據庫查詢更新信息。
- 7個人資料圖片。
它工作得很好。
任何答案?這是否意味着如果有1000人一次嘗試使用我的數據庫,那麼所有的東西都會被破壞?
某些代碼:
插入圖像(步驟#6在不工作示例,#7在工作實施例)
$這 - > mysqli->查詢( 「DELETE FROM」 .DB_REVIEW_IMAGE_TABLE。「WHERE email ='$ email'」);
如果($這個 - > mysqli->查詢( 「INSERT INTO」 .DB_REVIEW_IMAGE_TABLE。 「VALUES( '$電子郵件', '$內容', '$ IMAGETYPE')」))
更新用戶信息分成會話信息。 (步驟#7在不好的例子中,#6在工作示例中)
$ this-> userInfo = $ _SESSION [SESSION_USER_INFO] = $ database-> getUserInfo($ this-> email);
其中$ database-> getUserInfo($ this-> email)==「SELECT」.DB_USERS_ALL_MOUNTAIN。「,」.DB_USERS_BACK_COUNTRY。「,」.DB_USERS_GROOMERS。「,」.DB_USERS_PARK。「,」.DB_USERS_SEASON_DAYS。「, 「.DB_USERS_SEX。」,「.DB_USERS_YEARS。」,「.DB_USERS_FIRST_NAME。」,「.DB_USERS_LAST_NAME。」,「.DB_USERS_CITY。」,「.DB_USERS_STATE。」FROM「.DB_USER_INFO_TABLE.SQL_WHERE_EMELE
我喜歡使用常量: )。和DB_USERS_SEX =男性或女性(以防萬一)
邁克爾
請格式化您的問題以獲得更好的可讀性。使用表格上方的按鈕。 – stillstanding 2010-11-08 06:23:58
這有幫助嗎? – Michael 2010-11-08 06:31:45
我的猜測是數據庫在插入圖片時很忙,所以如果我事先做好聲明,它就可以正常工作。太混亂了! – Michael 2010-11-08 06:33:45