PDA

View Full Version : نگهداری سشن در صفحات مختلف



روح اله معینی زاده
یک شنبه 29 مرداد 1385, 12:10 عصر
سلام به همه‌ی بر و بچ این بخش

این حقیر تازه شروع به کار با پی اچ پی کردم. برای شروع تصمیم گرفتم دفترچه تلفنی رو که با وی بی نوشته بودم تبدیلش کنم به پی اچ پی.

سرتون رو به درد نیارم.

شنیدم که قسمتی به نام سشن (session) وجود داره که می شه با اون هویت کاربر رو چک کرد.

حالا من هنگام لاگین کردن نام کاربری رو که داره به سیستم وارد می شه در متغیر به شکل زیر نگه داشته ام.

$_SESSION["user"] = $user_id;
برای تست هم پس از همین خط آن را به اصطلاح اکو کردم و دیدم که متغیر در این سشن نشسته است. ولی وقتی به صفحه‌ی بعد می رم همین خط اکو که این‌جا جواب می ده توی اون صفحه جواب نمی ده.

کسی می دونه از چیه؟

از بعضی که پرسیدم می گن که شما باید ابتدای هر صفحه سشن رو شروع کنی.
وقتی آن را شروع می کنم خطا می ده که



Warning: session_start() [function.session-start (http://localhost/Telephone/function.session-start)]:
Cannot send session cookie -
headers already sent by
(output started at F:\php\Telephone\mainpage.php:2)
in F:\php\Telephone\mainpage.php on line 3


بی زحمت اگه کسی کار کرده، جواب بده. شاید هم در php.ini باید تغییر بدم که اون رو هم اگه لازمه بگید.

در ضمن خیلی برام جالب بود که کد چک کردن این که کاربر صحیح است یا خیر را وقتی در قبل از تگ‌های اچ تی ام ال می ذارم درست کار نمی کنه ولی وقتی پس از آن قرار می دهم، درست کار می کنه، علت؟

با احترام- خدانگهدار

reza_rad
یک شنبه 29 مرداد 1385, 13:03 عصر
ولی وقتی به صفحه‌ی بعد می رم همین خط اکو که این‌جا جواب می ده توی اون صفحه جواب نمی ده.

منظورت از صفحه دیگه توی همون browser هست یا اینکه پنجره ی جدیدی باز می کنید؟
session بسته است به پنجره ی browser . هر وقت پنجره ی جدیدی باز کنید سشن جدیدی ایجاد میشه.

houtanal
یک شنبه 29 مرداد 1385, 14:32 عصر
قبل از هر چیزی اینو (http://www.php.net/download-docs.php)دانلود کن.

moohssenn
یک شنبه 29 مرداد 1385, 23:38 عصر
یه جستجو تو همین انجمن بکنی کامل به همه سوالاتت میرسی

روح اله معینی زاده
دوشنبه 30 مرداد 1385, 08:22 صبح
سلام خدمت دوستان
الان اون لینکی رو که دوست‌مون هوتن‌آل نوشتن، نگاه کردم که دیدم اون رو قبلاً دریافت کردم.
در خصوص سوال آقا رضا راد هم بگویم که من در همان بروزر به صفحه‌ی بعدی می رم آن هم با دستور

echo "<meta http-equiv=\"refresh\" content=\"0; url=mainpage.php\"/>";

در خصوص یادآوری جناب محسن‌آقا هم بگم که بنده با کلمه‌ی session جست و جو کردم، ولی به چیز خاصی نرسیدم.

با احترام- خدانگهدار

روح اله معینی زاده
دوشنبه 30 مرداد 1385, 12:52 عصر
با سلام مجدد

در خصوص خطای اولی که گفته بودم، مسأله به این شکل حل شد که در php.ini خط
output_buffering =
را به
output_buffering = 4096
تبدیل کردم.

حال خطا نمی دهد ولی خروجی خاصی هم با دستور

$_SESSION["this_user"];
بر نمی‌گرداند.
چه کار دیگه‌ای احتمالاً انجام ندادم که باید انجام بشه تا سشن ثبت بشه و کار کنه؟
منتظرم
با احترام- خدانگهدار

روح اله معینی زاده
دوشنبه 30 مرداد 1385, 13:02 عصر
با سلام و احترام مجدد

دوستان بعد از این که قضیه خطای اولیه به شکل فوق حل شد، و با توجه به جمله‌ی آخر خودم که گفته بودم :&#171; ... تا سشن ثبت بشه ...&#187;، به ذهنم رسید که آیا ممکنه دستوری باشه که بخواد سشن رو ثبت کنه و با توجه به مرجعی که جناب هوتن‌آل، مدیر بخش گفته بودند، جست و جو کردم و دیدم که این دستور وجود داره، بنابراین قبل از دستور مقدار دهی به سشن، دستور


session_register("this_user");

رو نوشتم و با کمال تعجب دیدم که سشن ثبت شد.

با تشکر از همه دوستانی که برای این سؤال وقت گذاشتند.

با احترام- خدانگهدار

reza_rad
دوشنبه 30 مرداد 1385, 13:10 عصر
این مقاله رو بخون مشکلت حل میشه:)
http://www.iranphp.net/articles/aplications/Articles010.pdf
از سایت iranphp

moohssenn
دوشنبه 30 مرداد 1385, 20:51 عصر
session_register("this_user");

این نوع سشن کردن برای وقتی است که شما global را on کرده باشید , و به نظر حقیر بهتر است که برای سشن از


$_SESSION["user"] = $user_id;

استفاده نمائید . این حالت هم در حالت global وقتی on و وقتی که off باشد کار مینماید

روح اله معینی زاده
چهارشنبه 01 شهریور 1385, 09:42 صبح
سلام مجدد خدمت همه دوستان عزیز

ببخشید که زیاد می پرسم :گریه:

:متعجب:

الا که سشن ثبت شده و داره به همه‌ی صفحات پاس می‌شه، از کجا بفهمم که این سشن از بین نرفته (expire)؟ به عبارت دیگر این که آیا تابعی داریم که چک می‌کنه که سشن از بین رفته یا روش دیگه‌ای رو باید استفاده کنم؟

الان دو سه تا سؤال توی ذهنمه که نمی‌تونم بپرسم، چون باید اول جواب این مسأله پیدا بشه تا برسم سر وقت بقیه سؤال‌ها.

در ضمن چون همه‌ی این سؤال‌ها به سشن برمی‌گرده، سرفصل جدیدی رو آغاز نکردم‌ها.

منو ببخشید.

منتظرم
با احترام- خدانگهدار:متفکر:

armin390
چهارشنبه 01 شهریور 1385, 10:16 صبح
خب اگه سشن ست نشده باشه _تو اون آدرس_ وجود نداره دیگه!
http://ir.php.net/manual/en/ref.session.php رو نگاه کن و یا اون مقاله ای که برادر رضا لینک داده

روح اله معینی زاده
چهارشنبه 01 شهریور 1385, 14:51 عصر
سلام دوستان

نذارید این بحث فقط صرفاً یه لینک‌دونی بشه. قطعه کد بذارید تا استفاده کنیم. در ضمن کامل و روشن هم باشه. این لینک‌هایی رو که دادید، گفتن این‌جوری استفاده کنید و اون‌جوری.

منی که تازه برنامه‌نویسی وب رو شروع کردم، الان شدم سر در گم که این قطعات رو در کدوم فرمم باید بذارم؟
اول فرم قبل از شروع سشن، بعدش، و یا ... . خود کمک نوشته قبلش، یکی جواب داده این‌جوری نمی‌شه و پی اچ پی خودش اونو تنظیم می کنه و ... .
بالاخره من چه کار انجام دهم؟ کارهایی رو هم که گفتن، انجام دادم و بازم نشد، می‌گید اشکال از کجا می‌تونه باشه؟
با احترام- منتظرم- خدانگهدار

moohssenn
چهارشنبه 01 شهریور 1385, 18:58 عصر
if (isset($_SESSION[test])

این طوری میتونی وجود session رو چک کنی
بقیه مواردی هم که مشکلی داشتی رو دسته بندی کن و اینا ینویس تا انشاء الله یک تاپیک کامل در مورد سشن ها جمع و جود بشه

روح اله معینی زاده
جمعه 03 شهریور 1385, 10:42 صبح
سلام به دوستان

ببخشید که دیر برگشتم.
کد من در ابتدای صفحه‌ای که می‌خوام ببینم سشنش از بین رفته یا نه، به شکل زیر است.


<?PHP
session_start();
if (!isset($_SESSION["this_user"])) {
session_destroy();
echo "<meta http-equiv=\"Refresh\" content=\"0;url='index.php'\"/>";
}
?>

آیا این غلطه؟ (چون جواب نمی‌ده، عرض کردم)
با احترام- خدانگهدار

armin390
جمعه 03 شهریور 1385, 11:50 صبح
آیا این غلطه؟ (چون جواب نمی‌ده، عرض کردم)
چرا غلط!
چه جوابی باید بگیرید؟

شما با کدتون تست می کنید که اگر کلید this_user در سشن کاربر ثبت نشده پس سشن کاربر را نابود کن و صفحه را رفرش!

روح اله معینی زاده
جمعه 03 شهریور 1385, 12:19 عصر
سلام مجدد

جناب آرمین جوابی که باید بگیریم اینه که به صفحه‌ای که آدرسش رو دادم باید برم، که این کار انجام نمی شه.

این کد درون mainpage.php نوشته شده و در صورتی که سشن از بین بره باید به صفحه‌ی ورودی برگرده که کاربر کلمه‌‌ی کاربری و رمز عبورش رو بزنه و ... .

اصلاً یه چیزی، یکی که سشن‌هاش درست کار می‌کنه، فایل php.ini‌اش رو این‌جا بذاره تا من اون رو با مال خودم جایگزین کنم و ببینم که برنامه‌ام کار می‌کنه یا نه؟ و اگر کار نکرد اون وقت دوتا از صفحاتم رو این‌جا بذارم و شما اونا رو درست کنید.

من تازه کارم و شاید باید در صفحه‌ی ورودی چیزی رو تنظیم کنم که اصلاً به ذهنم نمی‌رسیده.

منتظرم- با احترام- خدانگهدار

armin390
جمعه 03 شهریور 1385, 13:47 عصر
از نتیجه ()phpinfo قسمت Session Support رو نگاه کن enable است؟؟
هیچ پیغامی بعد از اجرا نمی بینی؟؟در خط اول برنامه ات اضافه کن:


error_reporting(E_ALL);

توجه کن که قبل از session_start هیچ خروجی نباید داشته باشی!

در مورد php.ini هم باید بگم هر کس تنظیمات لازم رو با توجه به نیازها و البته شرایط تنظیم کرده!! و نمیشه چون رو سیستم من مشکل نداره پس با همون تنظیمات من رو هر سیستمی! هم مشکلی نباشه!

در ضمن شرایط رو محدود کن! اول اینکه به جای اون تگ متا اول یک خروجی ساده بذار مثلاً go to login! تا دیگه به مرورگر وابسته نباشی که شما رو ریدایرکت کنه تا نتیجه رو ببینی و دوم برای شرطت یک else بذار شاید ست شده!!...(خلاصه شرایط رو محدود کنه تا ببینی مشکل از سشن هست اصلاً!؟)

روح اله معینی زاده
جمعه 03 شهریور 1385, 14:25 عصر
سلام مجدد

نه به این روش هم جواد نداد

شما تستش کنید، ببینید به کجا می رسید. در ضمن قسمت اتصال به بانک اطلاعاتی رو یادم رفت بردارم، شما خودتون تغییرش بدید و اگه درست شد دوباره بفرستید.

با تشکر- خدانگهدار

armin390
جمعه 03 شهریور 1385, 18:23 عصر
در مورد ست شدن session که مشکلی نبود!

روح اله معینی زاده
شنبه 04 شهریور 1385, 08:36 صبح
سلام

آرمین جان خسته نباشی

ظاهراً سرت شلوغه. البته دستت درد نکنه که وقت گذاشتی.
عزیز دل برادر، منم که با اون مشکلی ندارم، من با از بین رفتن (expire) و چگونه فهمیدن این‌که از بین رفته (expired) مشکل دارم.

اینو هم گذاشتم تا شما تست کنید ببینید که قسمت تست سشن که از بین رفته یا نه (منظورم دستور if در ابتدای کد mainpage.php است)، درست کار می کنه یا نه؟

اگه وقت کردید اونو تست کنید؟

منتظرم- با احترام- خدانگهدار

armin390
شنبه 04 شهریور 1385, 10:36 صبح
سلام

اینو هم گذاشتم تا شما تست کنید ببینید که قسمت تست سشن که از بین رفته یا نه (منظورم دستور if در ابتدای کد mainpage.php است)، درست کار می کنه یا نه؟
خودت نوشتی:


if (!isset($_SESSION["this_user"])) {
session_destroy();
// echo "<meta http-equiv=\"Refresh\" content=\"0;url='index.php'\"/>";
echo "سشن از بین رفته است";
} else {
echo "سشن سالم است";
}

و درست هم کار میکنه!مشکلی نداره

روح اله معینی زاده
شنبه 04 شهریور 1385, 11:11 صبح
سلام

یعنی توی سیستم شما پس از گذشتن مدت زمانی (که خودت می دونی چند دقیقه است)، این روال درست کار کرد؟! :متعجب:

یعنی نوشت «سشن از بین رفته است» <= (;"سشن از بین رفته است" echo جواب داد)
یعنی اکو و ایفی که گذاشته بودم کار کرد ؟! :گیج:

پس باید تنظیمات‌مون رو با هم تطبیق بدیم و ببینیم که کجای کار مشکل داره. می‌شه php.ini ات رو برام بفرستی؟

با تشکر فراوان تر- منتظرم- خدانگهدار

armin390
شنبه 04 شهریور 1385, 13:30 عصر
);
خب وقتی ست نشده باشه به هر دلیلی! نتیجه: "سشن از بین رفته است"؛ این عجیبه
وقتی لینک میدیم هم که اون طوری می گی برادر!!

روح اله معینی زاده
یک شنبه 05 شهریور 1385, 08:30 صبح
سلام
من که منظورت رو از این نوشته آخری نگرفتم !
از تنظیمات بگو

armin390
یک شنبه 05 شهریور 1385, 09:36 صبح
منظورم این لینک http://ir.php.net/manual/en/ref.session.php بود
که توش راجع به تنظیمات هم گفته:


session.save_handler string (http://ir.php.net/manual/en/language.types.string.php) session.save_handler defines the name of the handler which is used for storing and retrieving data associated with a session. Defaults to files. See also session_set_save_handler() (http://ir.php.net/manual/en/function.session-set-save-handler.php).
session.save_path string (http://ir.php.net/manual/en/language.types.string.php) session.save_path defines the argument which is passed to the save handler. If you choose the default files handler, this is the path where the files are created. Defaults to /tmp. See also session_save_path() (http://ir.php.net/manual/en/function.session-save-path.php).
There is an optional N argument to this directive that determines the number of directory levels your session files will be spread around in. For example, setting to '5;/tmp' may end up creating a session file and location like /tmp/4/b/1/e/3/sess_4b1e384ad74619bd212e236e52a5a174If . In order to use N you must create all of these directories before use. A small shell script exists in ext/session to do this, it's called mod_files.sh. Also note that if N is used and greater than 0 then automatic garbage collection will not be performed, see a copy of php.ini for further information. Also, if you use N, be sure to surround session.save_path in "quotes" because the separator (;) is also used for comments in php.ini.
Warning If you leave this set to a world-readable directory, such as /tmp (the default), other users on the server may be able to hijack sessions by getting the list of files in that directory.
Note: Prior to PHP 4.3.6, Windows users had to change this variable in order to use PHP's session functions. A valid path must be specified, e.g.: c:/temp.
session.name string (http://ir.php.net/manual/en/language.types.string.php) session.name specifies the name of the session which is used as cookie name. It should only contain alphanumeric characters. Defaults to PHPSESSID. See also session_name() (http://ir.php.net/manual/en/function.session-name.php).
session.auto_start boolean (http://ir.php.net/manual/en/language.types.boolean.php) session.auto_start specifies whether the session module starts a session automatically on request startup. Defaults to 0 (disabled).
session.serialize_handler string (http://ir.php.net/manual/en/language.types.string.php) session.serialize_handler defines the name of the handler which is used to serialize/deserialize data. Currently, a PHP internal format (name php) and WDDX are supported (name wddx). WDDX is only available, if PHP is compiled with WDDX support (http://ir.php.net/manual/en/ref.wddx.php). Defaults to php.
session.gc_probability integer (http://ir.php.net/manual/en/language.types.integer.php) session.gc_probability in conjunction with session.gc_divisor is used to manage probability that the gc (garbage collection) routine is started. Defaults to 1. See session.gc_divisor (http://ir.php.net/manual/en/ref.session.php#ini.session.gc-divisor) for details.
session.gc_divisor integer (http://ir.php.net/manual/en/language.types.integer.php) session.gc_divisor coupled with session.gc_probability defines the probability that the gc (garbage collection) process is started on every session initialization. The probability is calculated by using gc_probability/gc_divisor, e.g. 1/100 means there is a 1% chance that the GC process starts on each request. session.gc_divisor defaults to 100.
session.gc_maxlifetime integer (http://ir.php.net/manual/en/language.types.integer.php) session.gc_maxlifetime specifies the number of seconds after which data will be seen as 'garbage' and cleaned up. Garbage collection occurs during session start.
Note: If different scripts have different values of session.gc_maxlifetime but share the same place for storing the session data then the script with the minimum value will be cleaning the data. In this case, use this directive together with session.save_path (http://ir.php.net/manual/en/ref.session.php#ini.session.save-path).

Note: If you are using the default file-based session handler, your filesystem must keep track of access times (atime). Windows FAT does not so you will have to come up with another way to handle garbage collecting your session if you are stuck with a FAT filesystem or any other filesystem where atime tracking is not available. Since PHP 4.2.3 it has used mtime (modified date) instead of atime. So, you won't have problems with filesystems where atime tracking is not available.
session.referer_check string (http://ir.php.net/manual/en/language.types.string.php) session.referer_check contains the substring you want to check each HTTP Referer for. If the Referer was sent by the client and the substring was not found, the embedded session id will be marked as invalid. Defaults to the empty string.
session.entropy_file string (http://ir.php.net/manual/en/language.types.string.php) session.entropy_file gives a path to an external resource (file) which will be used as an additional entropy source in the session id creation process. Examples are /dev/random or /dev/urandom which are available on many Unix systems.
session.entropy_length integer (http://ir.php.net/manual/en/language.types.integer.php) session.entropy_length specifies the number of bytes which will be read from the file specified above. Defaults to 0 (disabled).
session.use_cookies boolean (http://ir.php.net/manual/en/language.types.boolean.php) session.use_cookies specifies whether the module will use cookies to store the session id on the client side. Defaults to 1 (enabled).
session.use_only_cookies boolean (http://ir.php.net/manual/en/language.types.boolean.php) session.use_only_cookies specifies whether the module will only use cookies to store the session id on the client side. Enabling this setting prevents attacks involved passing session ids in URLs. This setting was added in PHP 4.3.0.
session.cookie_lifetime integer (http://ir.php.net/manual/en/language.types.integer.php) session.cookie_lifetime specifies the lifetime of the cookie in seconds which is sent to the browser. The value 0 means "until the browser is closed." Defaults to 0. See also session_get_cookie_params() (http://ir.php.net/manual/en/function.session-get-cookie-params.php) and session_set_cookie_params() (http://ir.php.net/manual/en/function.session-set-cookie-params.php). Since the cookie is returned by the browser, it is not prolonged to suffice the lifetime. It must be sent manually by setcookie() (http://ir.php.net/manual/en/function.setcookie.php).
session.cookie_path string (http://ir.php.net/manual/en/language.types.string.php) session.cookie_path specifies path to set in session_cookie. Defaults to /. See also session_get_cookie_params() (http://ir.php.net/manual/en/function.session-get-cookie-params.php) and session_set_cookie_params() (http://ir.php.net/manual/en/function.session-set-cookie-params.php).
session.cookie_domain string (http://ir.php.net/manual/en/language.types.string.php) session.cookie_domain specifies the domain to set in session_cookie. Default is none at all meaning the host name of the server which generated the cookie according to cookies specification. See also session_get_cookie_params() (http://ir.php.net/manual/en/function.session-get-cookie-params.php) and session_set_cookie_params() (http://ir.php.net/manual/en/function.session-set-cookie-params.php).
session.cookie_secure boolean (http://ir.php.net/manual/en/language.types.boolean.php) session.cookie_secure specifies whether cookies should only be sent over secure connections. Defaults to off. This setting was added in PHP 4.0.4. See also session_get_cookie_params() (http://ir.php.net/manual/en/function.session-get-cookie-params.php) and session_set_cookie_params() (http://ir.php.net/manual/en/function.session-set-cookie-params.php).
session.cookie_httponly boolean (http://ir.php.net/manual/en/language.types.boolean.php) Marks the cookie as accessible only through the HTTP protocol. This means that the cookie won't be accessible by scripting languages, such as JavaScript. This setting can effectly help to reduce identity theft through XSS attacks (although it is not supported by all browsers).
session.cache_limiter string (http://ir.php.net/manual/en/language.types.string.php) session.cache_limiter specifies cache control method to use for session pages (none/nocache/private/private_no_expire/public). Defaults to nocache. See also session_cache_limiter() (http://ir.php.net/manual/en/function.session-cache-limiter.php).
session.cache_expire integer (http://ir.php.net/manual/en/language.types.integer.php) session.cache_expire specifies time-to-live for cached session pages in minutes, this has no effect for nocache limiter. Defaults to 180. See also session_cache_expire() (http://ir.php.net/manual/en/function.session-cache-expire.php).
session.use_trans_sid boolean (http://ir.php.net/manual/en/language.types.boolean.php) session.use_trans_sid whether transparent sid support is enabled or not. Defaults to 0 (disabled).
Note: For PHP 4.1.2 or less, it is enabled by compiling with --enable-trans-sid (http://ir.php.net/manual/en/configure.php#configure.enable-trans-sid). From PHP 4.2.0, trans-sid feature is always compiled.
URL based session management has additional security risks compared to cookie based session management. Users may send a URL that contains an active session ID to their friends by email or users may save a URL that contains a session ID to their bookmarks and access your site with the same session ID always, for example.
session.bug_compat_42 boolean (http://ir.php.net/manual/en/language.types.boolean.php) PHP versions 4.2.3 and lower have an undocumented feature/bug that allows you to initialize a session variable in the global scope, albeit register_globals (http://ir.php.net/manual/en/ini.core.php#ini.register-globals) is disabled. PHP 4.3.0 and later will warn you, if this feature is used, and if session.bug_compat_warn (http://ir.php.net/manual/en/ref.session.php#ini.session.bug-compat-warn) is also enabled. This feature/bug can be disabled by disabling this directive.
session.bug_compat_warn boolean (http://ir.php.net/manual/en/language.types.boolean.php) PHP versions 4.2.3 and lower have an undocumented feature/bug that allows you to initialize a session variable in the global scope, albeit register_globals (http://ir.php.net/manual/en/ini.core.php#ini.register-globals) is disabled. PHP 4.3.0 and later will warn you, if this feature is used by enabling both session.bug_compat_42 (http://ir.php.net/manual/en/ref.session.php#ini.session.bug-compat-42) and session.bug_compat_warn (http://ir.php.net/manual/en/ref.session.php#ini.session.bug-compat-warn).
session.hash_function integer (http://ir.php.net/manual/en/language.types.integer.php) session.hash_function allows you to specify the hash algorithm used to generate the session IDs. '0' means MD5 (128 bits) and '1' means SHA-1 (160 bits).
Note: This was introduced in PHP 5.
session.hash_bits_per_character integer (http://ir.php.net/manual/en/language.types.integer.php) session.hash_bits_per_character allows you to define how many bits are stored in each character when converting the binary hash data to something readable. The possible values are '4' (0-9, a-f), '5' (0-9, a-v), and '6' (0-9, a-z, A-Z, "-", ",").
Note: This was introduced in PHP 5.

روح اله معینی زاده
یک شنبه 05 شهریور 1385, 11:47 صبح
سلام مجدد
داداش من اگه می خواست کارم با این راه بیفته که تا حالا انجام شده بود.
php.ini‌ت رو برام بفرست
منتظرم و خدانگهدار البت با احترام

armin390
یک شنبه 05 شهریور 1385, 12:53 عصر
داداش من اگه می خواست کارم با این راه بیفته که تا حالا انجام شده بود.
جان!!
پس همون بهتر که کار امثال تو راه نیوفته!

php.ini‌ت رو برام بفرست
هیچ لزومی برای این کار نمی بینم

اینجا هیچ کس تعهد نداره که هر چیزی می خواین(بنا به درکتون از موضوع!) در اختیارتون قرار بده!
کلاً تو این تاپیک راه کارهایی که یک برنامه نویس باید بداند برای این کار مطرح شده!

در ضمن لحنتون رو عوض کنید داری با غلامت حرف نمی زنی که ...

روح اله معینی زاده
یک شنبه 05 شهریور 1385, 14:41 عصر
سلام
اولاً در اون جمله منظورم توهین به هیچ کسی نبوده که زود شما ناراحت شده‌اید.

ثانیاً اگه دقت کرده باشید که حتماً هم همین طور است، در پست شماره 3، مدیر بخش لینکی رو برای دانلود گذاشتن که همه‌ی اینا رو گفته و چون من قبلاً اون رو خودنده بودم و خوب چیز زیادی ازش نفهمیده بودم، اینو نوشتم که &#171; اگه می خواست کارم با این راه بیفته که تا حالا انجام شده بود&#187;

سیوماً شما کاملاً صحیح فرموده‌اید، هیچ کس هیچ تعهدی نداره که هر چی داره در اختیار دیگران قرار بده اون هم در این دنیای پول پولکی و ...

چهارماً بنده هیچ‌گاه خودم رو سرور کسی حساب نمی‌کنم که بعد بخوام مثل ... با اون صحبت کنم، ولی اگه متنی که نوشته بودم برای شما این معنا رو داشت هیمن جا از شما معذرت می‌خواهم.

حالا هم اگه دوست داری کار یه بنده خدایی راه بیفته که تازه‌کار هم هست، می‌تونی ادامه بدی، ولی هیچ اجباری نیست که خودت رو ناراحت کنی، یا از حرف بقیه ناراحت بشی. این هم که می‌بینی این‌قدر پیله شدم که اون رو برام بفرستی تقصیر خودته، می خواستی توی پست 21 ننویسی که داره درست کار می‌کنه. من هم با خودم گفتم وقتی روی سیستم شما داره جواب می‌ده و روی سیستم من جواب نمی‌ده، پس حتماً اشکال از اونه و اون رو تقاضا کردم. حالا دوست داری بفرست، دوست هم نداری نفرست. به قول معروف: ما رو به خیر و شما رو به سلامت.

اگه از دوستان دیگه کسی لینکی رو که گذاشتم، برداشته و روی سیستمش جواب داده، (اگه دوست داشت) جواب بده.

خدانگهدار البت بازم با احترام