PDA

View Full Version : تازه کار: نمایش خطا در صفحه فعلی+هدایت به صفحه بعدی



روح اله معینی زاده
سه شنبه 02 اسفند 1384, 09:35 صبح
سلام خدمت دوستان گرامی

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

1- یه صفحه دریافت اطلاعات دارم، حال اگه کاربر یکی از خانه‌ها رو پر نکرده بود که جزو ضروری‌ها هم بود چه طور در همین صفحه به ایشان اخطار بدهم.

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

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

tabib_m
سه شنبه 02 اسفند 1384, 11:40 صبح
1- با php نمیشه ، باید با Javascript و یا vbscript این کار رو بکنید
2- برای انتقال از یک صفحه به صفحه ی دیکه من از طریق javascript بلدم. نمیدونم با PHP هم میشه یا نه؟
ولی میتونی اول به صفحه ی جدید با submit باس کنی، و بعد جک کنی که درستن یا نه؟ و در صورت درست بودن عملیات دلخواه رو انجام بدی

javad_hosseiny
سه شنبه 02 اسفند 1384, 12:19 عصر
با php هم میشه و راحت تر هم هست
بهتر است که در همان صفحه شما مقادیر موردنظر را چک کنید و جهت فعال شدن این بخش (تست متغیرها موجود در فرم) از یک متغیر اضافی در فرم خود استفاده کنید و در صورت مقدار داشتن آن متغیر عملیات چک (تست متغیرها) را انجام دهید .
جهت نمونه یک فرم ارسال ایمیل قبلا آپلود کردم که دارای چنین قابلیتی است (در همان صفحه متغیرها را چک می کند) می تونید از لینک زیر آن را دان لود کنید:
http://www.barnamenevis.org/forum/showthread.php?t=16420
و همچنین جهت redirect کردن به صفحه بعد نیز دستور php هست ولی اگر اصرار بر استفاده از دستورات خود javascript دارید به راحتی می تونید عبارت جاوا موردنظر خود را با دستور echo فراخوانی کنید مثال:

echo "<script>window.location='index.htm'</script>"

night11
سه شنبه 02 اسفند 1384, 13:03 عصر
یه کاره دیگه هم میشه اینکه فیلدها رو توی همون صفحه با جاوا اسکریپت چک کنی اگه درست بود بعد ارسال انجام بشه

برای پاس دادن به یه صفحه دیگه هم با پی اچ پی به این صورت عمل کن


<?php
header("Location: http://www.example.com/"); /* Redirect browser */

/* Make sure that code below does not get executed when we redirect. */
exit;
?>

cybercoder
سه شنبه 02 اسفند 1384, 16:51 عصر
دوستان تمامی این چیزایی که همتون گفتید بازم رفتید رو جاوااسکریپت چون چاره دیگه ای نیست در ضمن فکر می کنم آقای حائری هم همینو گفتن.

night11
سه شنبه 02 اسفند 1384, 18:21 عصر
دوستان تمامی این چیزایی که همتون گفتید بازم رفتید رو جاوااسکریپت چون چاره دیگه ای نیست در ضمن فکر می کنم آقای حائری هم همینو گفتن.

بله حرف شما درسته چون با اسکریپت جاوا سریعتر کنترل میشه و نیازی به پردازش از طرف سرور نیست
اما با پی اچ پی هم میشه این کار رو کرد اما پردازش اضافی انجام میشه وقتی بشه سمت کلاینت چک کرد چه نیازی به سمت سرور هست .

tabib_m
چهارشنبه 03 اسفند 1384, 11:36 صبح
بهتر است که در همان صفحه شما مقادیر موردنظر را چک کنید و جهت فعال شدن این بخش (تست متغیرها موجود در فرم) از یک متغیر اضافی در فرم خود استفاده کنید و در صورت مقدار داشتن آن متغیر عملیات چک (تست متغیرها) را انجام دهید .
این عمل بعد از سابمیت انجام میشه دیکه؟
اینجوری در صورت داشتن ارور باید دوباره صفحه یک بار اضافه لود بشه!
خوب من فکر نمیکنم این راه بهتری از استفاده از جاواسکریبت باشه
البته مکر این که من منظور شما رو اشتباه فهمیده باشم

ealvandi
یک شنبه 12 فروردین 1386, 15:54 عصر
من از هدر استفاده کردم



header("Location: time.php");


خطای زیر رخ داد




Warning: Cannot modify header information - headers already sent by (output started at E:\ZanjanAmlak\codes\melk_input_reg_code.php:10)



لطفا کمکم کنید.

peyman1987
دوشنبه 13 فروردین 1386, 02:04 صبح
دوست عزیز شما بعد از یک سال و نیم این تاپیک رو بالا آوردید ولی خوب جوابتون این هست که برای اجرای دستوراتی مثل همین HEADER باید قبل از چاپ شدن حتی یک کاراکتر در صفحه این دستورات اجرا بشن یعنی اگه حتی <HTML> قبل از این دستور قرار داشته باشه این دستور اجرا نمیشه برای همین قبل از استفاده از هر دستور چاپی در صفحه باید این دستور رو فراخوانی کنین.

nassim_20
جمعه 09 شهریور 1386, 14:26 عصر
یک سال و نیم بعد!...
من از کد زیر که استفاده می کنم آدرس رو بصورت نسبی دریافت می کنه
مثلا من می خواهم از سایتم وصل شوم به صفحه ای از سایتم و بعد از ان بطور اتوماتیک بعد از انجام یکسری از کدهای PHP (که خروجی ندارد) به سایتی وصل شود. آیا می تونم از کد زیر استفاده کنم اگر نه باید چکار کنم؟


echo "<script>window.location='index.htm'</script>"

البته از header هم استفاده می کنم منتها اصلا به سایت مورد نظر وصل نمی شه
البته لازم به ذکر است که من سیستم خودم تست می کنم نه روی هاست آیا فرق داره؟

oxygenws
جمعه 09 شهریور 1386, 15:04 عصر
خوب آدرسو مطلق بده!!!

nassim_20
جمعه 09 شهریور 1386, 16:18 عصر
من آدرس رو مطلق می دهم کدم بصورت زیر است


echo "<script>window.location='www.Mysait.com'</script>";

ولی زمانیکه می خواد وصل بشه آدرسی که وارد میکنه بصورت زیر است

http://localhost/new%20project/www.Mysait.com
نمی دونم مشکل از کجاست

javad_hosseiny
جمعه 09 شهریور 1386, 20:02 عصر
آدرس موردنظر رو با ذکر نام پروتکل ارتباطی صدا بزنید

echo "<script>window.location='http://www.Mysait.com'</script>";

cybercoder
جمعه 09 شهریور 1386, 23:46 عصر
href شو بذار حل می شه

موفق باشید

ealvandi
شنبه 10 شهریور 1386, 00:12 صبح
نکاتی در مورد استفاده از دستور header

http://barnamenevis.org/forum/showthread.php?t=69150&highlight=ob_start
http://barnamenevis.org/forum/showthread.php?t=64530&highlight=ob_start
http://barnamenevis.org/forum/showthread.php?t=69987&highlight=ob_start

Bahram0110
شنبه 10 شهریور 1386, 23:11 عصر
<html><head>
<META HTTP-EQUIV="Refresh" CONTENT="0; URL=page2.php">
</head>

nassim_20
یک شنبه 11 شهریور 1386, 05:42 صبح
آدرس موردنظر رو با ذکر نام پروتکل ارتباطی صدا بزنید

echo "<script>window.location='http://www.Mysait.com'</script>";
آقای جواد حسینی ممنون از لطفتون مشکلم حل شد
از بقیه دوستان هم که وقت گذاشتند و به حل مشکل من کمک کردند نیز بسیار سپاسگذارم