PDA

View Full Version : سوال: دو تا سوال ( شرمنده عنوان مناسب پیدا نکردم )



arslan tegin ghazi
جمعه 28 مرداد 1390, 12:30 عصر
سوال اول : ما یک صفحه داریم که کد پی اچ پی یک سری لینک بری ما ایجاد می کند ، مثلا :

http://localhost/index.php?page=سلام

مشکل اینجا است که وقتی این صفحه در اینترنت اکسپلورر (فقط در اینترنت اکسپلورر) برای اولین بار (فقط برای اولین بار) در تب جدید (فقط در تب جدید) باز می شود ، وقتی ما page را با پی اچ پی می گیریم ( GET_$ ) هنگام چاپ اینطور می شود : ؟؟؟؟

سوال دوم : ما یک تابع ثبت اطلاعات در مای اس کیو ال داریم . قبل از ثبت اطلاعات نوشته ایم تمام کاراکترهای " ' " را با " '\ " جایگزین کند . به درستی جایگزینی اتفاق می افتد ولی هنگام ثبت در دیتا بیس بصورت " ' " ثبت می شود .

توضیحات اضافه لازم بود بگویید ، بنویسم .

Nima0711
جمعه 28 مرداد 1390, 14:13 عصر
سلام
برای مشکل اولتون باید بگم که نمیشه کاری کرد چون اطلاعات در داخل ادرس بار و صفحه شما از نظر کارکترست یکی نسیتن
برای مشکل دوم هم باید بگم که وقتی شما این کار رو انجام می دهید (" '\ ") می خواهید به کامپایلر بفهمانید که این لیترال نیست بلکه یک کارکتر است .

arslan tegin ghazi
جمعه 28 مرداد 1390, 16:34 عصر
این یعنی چی ؟ راه حل نداره ؟

arslan tegin ghazi
جمعه 28 مرداد 1390, 16:45 عصر
سلام
برای مشکل اولتون باید بگم که نمیشه کاری کرد چون اطلاعات در داخل ادرس بار و صفحه شما از نظر کارکترست یکی نسیتن
برای مشکل دوم هم باید بگم که وقتی شما این کار رو انجام می دهید (" '\ ") می خواهید به کامپایلر بفهمانید که این لیترال نیست بلکه یک کارکتر است .

پس اینهمه سایت که اطلاعات رو داخل آذرس منتقل می کنند چی کار می کنند ؟

Nima0711
جمعه 28 مرداد 1390, 17:05 عصر
شما می خواید با این کوئری که ارسال کنید چی کار کنید لطفاً کامل توضیح بدید تا راهنمای کنم



پس اینهمه سایت که اطلاعات رو داخل آذرس منتقل می کنند چی کار می کنند ؟ من تا به حال سایتی رو ندیدم که برای متود گت از کلمات فارسی استفاده کنه

پیشنهاد من استفاده از سشن هست به جای استفاده از متود get

eshpilen
جمعه 28 مرداد 1390, 17:19 عصر
اینو امتحان کن بگو درست شد یا نه:

<?php
header('Content-Type: text/html; charset=utf-8');

if(isset($_GET['page'])) echo $_GET['page'], '<br>';

echo '<a target=_blank href="http://localhost';
echo $_SERVER['PHP_SELF'], '?page=';
echo urlencode('سلام');
echo '">link</a>';

?>

ضمنا عنوان بی محتوی تاپیک با جملاتی مثل «شرمنده عنوان مناسب پیدا نکردم» توجیه نمیشه! واسه همین تاحالا این تاپیک رو باز نکرده بودم.

arslan tegin ghazi
جمعه 28 مرداد 1390, 18:23 عصر
اینو امتحان کن بگو درست شد یا نه:

<?php
header('Content-Type: text/html; charset=utf-8');

if(isset($_GET['page'])) echo $_GET['page'], '<br>';

echo '<a target=_blank href="http://localhost';
echo $_SERVER['PHP_SELF'], '?page=';
echo urlencode('سلام');
echo '">link</a>';

?>

ضمنا عنوان بی محتوی تاپیک با جملاتی مثل «شرمنده عنوان مناسب پیدا نکردم» توجیه نمیشه! واسه همین تاحالا این تاپیک رو باز نکرده بودم.

تبریک می گویم تجربه شما خیلی بالاست .:متعجب:

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

arslan tegin ghazi
جمعه 28 مرداد 1390, 18:37 عصر
شما می خواید با این کوئری که ارسال کنید چی کار کنید لطفاً کامل توضیح بدید تا راهنمای کنم


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

پیشنهاد من استفاده از سشن هست به جای استفاده از متود get

از شما بابت توجهتان به سوال من تشکر می کنم .:تشویق:
اول باید بگویم که آماتور هستم پس زیاد به راه حلهای غیر اصولی من خرده نگیرید . توضیح اینکه می خواهم چیکار کنم درازه ولی خلاصه می کنم ( منظور در مورد اشکال دوم )

بعد کنکور به فکر یک سایت برای خودم شدم که بعد از نوشتن بتونم بفروشمش هم . برای همین دست بکار شدم .

امکانات شبه-سایت من :
1 - ایجاد صفحه جدید .
2 - آپلود ماژول .

اینها امکانات اولیه هستند و امکانات بعدی با ماژول ها حل خواهند شد .

اشکال من در قسمت اضافه کردن محتویات برای صفخه جدید است : من یک ادیتور پیدا کردم و هسته اصلی را کپی کردم و کمی امکانات به آن اضافه نمودم : http://www.emirplicanic.com/uploaded/tutorials/javascript/editor/index.html

حالا وقتی با ادیتور یک صفحه ادیت می کنم که در آن کاراکتر " ' " به کار رفته با کدهای قبلی دیگر نمی توانم در صفحه "تغییر محتوای صفحه از قبل ایجاد شده" متن قبل که در دیتا بیس اضافه شده را به درون همون تکست باکس بگذارم . چون " ' " به درستی با " '\ " عوض نشده .

در ضمن :


$content = str_replace("'", "\'", $content);

آقا eshpilen مشکل جامعه برنامه نویسی اینه که هر کی از راه می رسه ( مثل من ) یک قلقلکی میده مبحث رو .

eshpilen
جمعه 28 مرداد 1390, 18:37 عصر
تبریک می گویم تجربه شما خیلی بالاستشما هم یک بار کل رفرنس یه چیزی رو بخونی دیگه توی این چیزای پیش پا افتاده گیر نمیکنی.
گیر کردن شما به جهت این هست که نمیدونید چه توابعی وجود دارن و برای چی بکار میرن. اینا هم اکثرا در رفرنس آمده با توضیح و مثال کافی.


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

\\\'
یعنی سه تا بک اسلش و یک کوتیشن.

eshpilen
جمعه 28 مرداد 1390, 18:43 عصر
حالا وقتی با ادیتور یک صفحه ادیت می کنم که در آن کاراکتر " ' " به کار رفته با کدهای قبلی دیگر نمی توانم در صفحه "تغییر محتوای صفحه از قبل ایجاد شده" متن قبل که در دیتا بیس اضافه شده را به درون همون تکست باکس بگذارم . چون " ' " به درستی با " '\ " عوض نشده .
بنده راه بالا رو برای هدف درج عین رشته ای که میخواید در دیتابیس گفتم.
برای درج مجدد مقادیر در تکست باکس و اینها از تابع addslashes استفاده کنید احتمالا همونی هست که میخواید و راه اصولی تریه.

arslan tegin ghazi
جمعه 28 مرداد 1390, 18:51 عصر
من به یک نکته ظریف دقت نکرده بودم . خیلی متشکرم که وقت گذاشتید .