PDA

View Full Version : Database error with vb 3.0.7


YUSIF
04-24-2005, 11:23 PM
Hi , I made forum that to allow Unregistered / Not Logged In to write any problems thay faced while they try to log in or register . and when they wrote
thier threaded the thread title show in the forum list but when I click on the tilte to read i got Database error


error msg.
=======================
Database error in vBulletin 3.0.7:
Invalid SQL: SELECT COUNT(threadid) AS total FROM thread WHERE postuserid=
mysql error: 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 '' at line 1
mysql error number: 1064
=======================



but when any member already logged on wrote any thread in the same forum it's show fine no any error . and all the Forum Permission fine I checked them well

than I replaced " newthread.php & showthread.php " with new files but the problem still .

my vb is 3.0.7 , how can I fix this problem ?


Notice : it was work fine with out any error with users not registerd when i was useing vb 3.0.3

Thanks

all-the-vb
04-25-2005, 09:37 AM
hello

open includes/functions_showthread.php

find:

$usertherd = $DB_site->query_first("SELECT COUNT(threadid) AS total FROM thread WHERE postuserid=$post[userid] ");
$usertherdcoun = $usertherd[total];
$userpostdcoun = $post[posts] - $usertherdcoun ;


replace with:

if($bbuserinfo[userid]!=0){
$usertherd = $DB_site->query_first("SELECT COUNT(threadid) AS total FROM thread WHERE postuserid=$post[userid] ");
$usertherdcoun = $usertherd[total];
$userpostdcoun = $post[posts] - $usertherdcoun ;
}


good luck

YUSIF
04-25-2005, 10:11 AM
all-the-vb thank you for your help

after replacing the new code

It's work NOW with Unregistered / Not Logged In ,, but the error come's up with
registered user after they Logged In :(

but the threaded befor replaceing the new code didn't show up

any idea ??

thanks

all-the-vb
04-25-2005, 12:43 PM
try this:

if($bbuserinfo[userid]!=0 and $post[userid] !=0){
$usertherd = $DB_site->query_first("SELECT COUNT(threadid) AS total FROM thread WHERE postuserid=$post[userid] ");
$usertherdcoun = $usertherd[total];
$userpostdcoun = $post[posts] - $usertherdcoun ;
}

جرب , وتأكد هل الخطأ الذي يظهر نفس الخطأ السابق؟

YUSIF
04-25-2005, 01:46 PM
طبعاً الخطاء بسبب هاك عدد مواضيع العضو و عدد ردوده
و بعد تجربة الكود الأخير

أصبح الخطاء في الملف في السطر رقم 675
و هو خطاء غير الخطاء السابق

و عند إزالة الهاك بالكامل .. يتم إضافة أو مشاهدة موضوع للجميع سواء زوار
أو أعضاء دون مشكله

هل من حل ؟؟؟

تقديري لك و شكري

all-the-vb
04-25-2005, 01:49 PM
طيب ياريت اشوف الخطأ الجديد.؟

YUSIF
04-25-2005, 04:34 PM
في الهاك الخاص بعدد مواضيع العضو و عدد ردوده

كان هناك
ثلاث إضافات في ملف
includes/functions_showthread.php


الأضافه الأولى
global $DB_site;

مباشره بعد
function construct_postbit($post, $maintemplatename = 'postbit', $alternate = '')
{



الأضافه الثانيه

$mwacount = $post['posts'];

مباشره بعد

// format posts number


أما الأضافه الثالثه و الأخيره فكانت$usertherd = $DB_site->query_first("SELECT COUNT(threadid) AS total FROM thread WHERE postuserid=$post[userid] ");
$usertherdcoun = $usertherd[total];
$userpostdcoun = $mwacount - $usertherdcoun ;


و بعد إزالة الأضافه الثانيه تماماً

و إستبدال الأضافه الثالثه بالكامل بالكود الأخير في ردك الثاني

لم يحدث أي مشكله على الأطلاق و أصبح بالأمكان للزائر أو العضو سواء مسجل دخول أو لم يسجل دخول
أن يضيف أو يشاهد الموضوع




الشي الوحيد و الذي إستجد بعد هذه المحاوله هو أنه أصبح في كل الأقسام
هو أنه لا تظهر عدد مواضيع العضو أو ردوده ما لم يتم تسجيل الدخول


و بعد تسجيل الدخول
فإن خانة الردود تعرض رقم غير حقيقي لعدد الردود و يسبقها علامة (-) ناقص
أما خانة المواضيع فهي تعرض الرقم الحقيقي لعدد مواضيع العضو
مع بقاء إمكانية ظهور مجموع مشاركاته أي مجموع مواضيعه و ردوده مع بعض
صحيحه في كل الحالتين سواء بعد أو قبل تسجيل الدخول

و إذا لها حل أنتظر ردك

كل تقديري و شكري لشخصك الكريم

Marco van Herwaarden
04-25-2005, 08:57 PM
Since this is an international board it is much apreciated if we could stick to English. If that is not possible, please take it to PM.

Thank you.

YUSIF
04-25-2005, 11:54 PM
ok MarcoH64

sorry ,, and will keep on the forum rules

Marco van Herwaarden
04-26-2005, 03:42 AM
Thank you :D

I can understand that you get carried away when you have the chance to discuss things like this in your own language.

all-the-vb
04-27-2005, 08:18 AM
YUSIF
اها فهمت قصدك.

ابحث عن:

if($bbuserinfo[userid]!=0 and $post[userid] !=0){
$usertherd = $DB_site->query_first("SELECT COUNT(threadid) AS total FROM thread WHERE postuserid=$post[userid] ");
$usertherdcoun = $usertherd[total];
$userpostdcoun = $post[posts] - $usertherdcoun ;
}


واستبدله بي:

if($post[userid] !=0){
$usertherd = $DB_site->query_first("SELECT COUNT(threadid) AS total FROM thread WHERE postuserid=$post[userid] ");
$usertherdcoun = $usertherd[total];
$userpostdcoun = $post[posts] - $usertherdcoun ;
}

Marco van Herwaarden
04-27-2005, 09:44 AM
@all-the-vb

Could you please continue support in the public threads in English.

YUSIF
04-27-2005, 12:35 PM
salam all-the-vb

even this didn't help still get wrong number in posts field with (-)

maybe i should remove all this hack if its unpossible to fix it

waiting from you

index
06-08-2005, 12:36 PM
Hi All,



am getting like this error:


<!--
Database error in Board 3.0.7:

Invalid SQL:
SELECT * FROM cpsession
WHERE userid =
AND hash = 'cd3c00bcde427656daf2825b0c98cfc3'
AND dateline &gt; 1118232464
mysql error: 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 'AND hash = 'cd3c00bcde427656daf2825b0c98cfc3'
AND dateline

mysql error number: 1064

Date: Wednesday 08th of June 2005 04:07:44 PM
Script: http://............com/vb/admincp/
Referer:
IP Address:########
-->


can anyone help me guyz :S

Thanks a lot