تغطية مباشرة لأحداث منتدى الإعلام الجديد المقام بمدينة أبوظبي
هل تقترح تمديد مسابقة سوالف كاست؟

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > PHP
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

رد  
 
LinkBack أدوات الموضوع
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#1 (permalink)  
هل من أحد يقدر يساعدني في تعديل هذه الأكواد


السلام عليكم......
كيف يمكنني التعديل على قواعد البيانات ؟
عن طريق هذا الكود :
كود PHP:
<?
include("config.php");
mysql_pconnect($dbhost$dbuname$dbpw);
        @
mysql_select_db("$dbname") or die ("Unable to select database");
$query="SELECT * FROM magzen ";

$result=mysql_query($query);
$num=mysql_numrows($result);
$i=0;
while (
$i $num) {


    
$sub=mysql_result($result,$i,"sub");
    
$txt=mysql_result($result,$i,"txt");
    
$user=mysql_result($result,$i,"user");   
    
$id=mysql_result($result,$i,"id");
?>
<html dir="rtl">

<head>
<title>تعديل المقالات</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
</head>

<body>

<p align="center"><span lang="ar-om"><font size="6">تعديل</font></span></p>
<? echo "<form method='post' action='$PHP_SELF'>"?> 
    <p align="center"><span lang="ar-om">اسم المستخدم</span></p>
    <p align="center">
    <input type="text" name="user" size="20" value="<?echo $user;?>"></p>
    <p align="center"><span lang="ar-om">عنوان الموضوع</span></p>
    <p align="center">
    <input type="text" name="sub" size="20" value="<?echo $sub;?>"></p>
    <p align="center"><span lang="ar-om">الموضوع</span></p>
    <p align="center"><textarea rows="2" name="txt" cols="20"><?echo $txt;?></textarea></p>
    <p align="center"><input type="submit" value="إرسال" name="B1"><input type="reset" value="إعادة تعيين" name="B2"></p>
</form>
<p align="center">&nbsp;</p>

</body>

</html>

<?
    
++$i ;
$id $row->id;
}
if (
$update) {
    if(
$user == "" || $sub == "" || $txt == "") {
        die(
"<b>You left one or more fields blank.</b>");
    }    

$query2 "update magzen set sub='$sub', txt='$txt', user='$user'
            where id='$id'"
;
    
mysql_db_query('links',$query2);
}
mysql_close();

?>
ممكن احد يعدله لي ؟
اسم الجدول magzen
اسماء الحقول :
id
sub
txt
user

والسؤال الثاني :
كيف يمكنني عرض محتويات الحقول حسب رقم الآي دي (id) ؟

كمثال هذا الكود :
كود PHP:
<?

include("config.php");
    
mysql_pconnect($dbhost$dbuname$dbpw);
        @
mysql_select_db("$dbname") or die ("Unable to select database");
$query="SELECT * FROM magzen ";
$result=mysql_query($query);

mysql_close();

/*Display Results*/

$num=mysql_numrows($result);
$i=0;
while (
$i $num) {


    
$sub=mysql_result($result,$i,"sub");
    
$txt=mysql_result($result,$i,"txt");
    
$user=mysql_result($result,$i,"user");   
    
$id=mysql_result($result,$i,"id");
?>
      <p><b>txt :</b><i><?echo $txt;?></i></p>
<?
    
++$i ;

}
?>
وأريد عرض محتويات احد الحقول عن طريق الآي دي
فكيف يمكنني ذلك ؟






الرجل الخارق غير متواجد حالياً   قديم 07-06-2005, 03:15 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Feb 2003-
#2 (permalink)  

بعد الاتصال بقاعدة البيانات وكل شي..:

كود:


$q="update magzen set sub='$newsub' txt='$newtxt' user='$newuser' where id=$theid limit 1";
$r=mysql_query($q);
لاحظ انه ما عدلنا على حقل ال id طبعا.. المهم نقول للبرنامج عدل في جدول magzen واستبدل ما هو موجود في حقل ال sub بالقيمه الموجوده في المتغير newsub وهكذا هو الحال بالنسبه لل txt و user ... وطبعا لازم البرنامج يعرف اي سجل يعدل.. مش كل السجلات.. اذا نقول له عدل هذه الاشياء في السجل الذي رقم ال id الخاص به هو theid ..
وطبعا المتغيرات: newsub.. newuser.. newtxt .. تكون انت ارسلتها عن طريق الفورم..
والمتغير theid هو رقم السجل.. في حالتك هذه رقم الاي دي الخاص بالمقال المراد التعديل عليه.


بالنسبه للفورم لازم يرسل لصفحه او نفس الصفحه مع اكشن.. بهذه الطريقه index.php?action=change .. طبعا "اكشن" هو متغير وتستطيع استبداله بأي شئ.






__________________
لا اله الا انت سبحانك اني كنت من الظالمين
EsKi غير متواجد حالياً   قديم 07-06-2005, 06:22 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Feb 2003-
#3 (permalink)  

بالنسبه للسؤال الثاني وهو عرض النتائج حسب ال id
انظر للسطر
$query="SELECT * FROM magzen ";

فقط اضف عليه order by id

ليصبح هكذا:

كود:
$query="SELECT * FROM magzen  order by id";
وهذا معناه استخراج البيانات وترتيبها حسب ال id من الصغير الى الكبير .. اما اذا اردت ترتيبها من الكبير الي الصغير اضف الكلمه desc ..

كود:
$query="SELECT * FROM magzen  order by id desc";
ملاحظه: عكس desc هي asc وهي الافتراضيه بمعنى انك لو لم تضعها سيترضها البرنامج .. كما فعلت في الترتيب الاول.






__________________
لا اله الا انت سبحانك اني كنت من الظالمين
EsKi غير متواجد حالياً   قديم 07-06-2005, 06:30 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#4 (permalink)  

شكرا لك على ردك

بجرب الأكواد

شكرا لك






الرجل الخارق غير متواجد حالياً   قديم 08-06-2005, 06:53 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#5 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة Pal-Heart
بالنسبه للسؤال الثاني وهو عرض النتائج حسب ال id
انظر للسطر
$query="SELECT * FROM magzen ";

فقط اضف عليه order by id

ليصبح هكذا:

كود:
$query="SELECT * FROM magzen  order by id";
وهذا معناه استخراج البيانات وترتيبها حسب ال id من الصغير الى الكبير .. اما اذا اردت ترتيبها من الكبير الي الصغير اضف الكلمه desc ..

كود:
$query="SELECT * FROM magzen  order by id desc";
ملاحظه: عكس desc هي asc وهي الافتراضيه بمعنى انك لو لم تضعها سيترضها البرنامج .. كما فعلت في الترتيب الاول.

أقصد عن طريق رقم الآي دي
الذي يظهر في مكان عنوان الموقع (مثل الصورة)


ولو ممكن تعمل لي نموذج كامل لكي أفهم أكثر






الرجل الخارق غير متواجد حالياً   قديم 08-06-2005, 10:29 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Feb 2003-
#6 (permalink)  

عزيزي الطريقه الي تقول عليها هي حسب نظام الاكشنز وشرحها شوي طويل بس هي حلوه
بمعني انك ما تعرض كل شي بصفحه مختلفه
مثلا عندك صفحة ال index.php .. وفيها مهلومات مختلفه لنفرض اننا ضغطنا على الكلمه.. عرض المقالات (لكي نعرض المقالات) فبدلا من ان نكتب الوصله لصفحه اخرى .. نكتب هكذا:

كود:
<a href="index.php?page=topics">عرض المقالات</a>
كلمة page هي متغير حددناه هنا ونستطيع استبداله باي شئ مثل action او اي شئ..
وحددنا ان ال page يكون topics ..

الان في المكان الذي نريد ان يظهر فيه الاشياء المتغيره.. نستعمل ال if او ال switch
على سبيل المثال:

كود:
if ($page==topics)
include topics.php;
elseif ($page=jokes)
include jokes.php;
تخيل ان عندك عاليمين قائمه وعليها الخيارات مقالات .. نكت .. قصائد.. الخ الخ
وفي الشمال تريد ان يظهر النكت اذا اخترت النكت او المقالات اذا اخترت المقالات.
اذا تفعل كما قلت لك وتضع الاوامر الشرطيه..
بمعنى اخر:
اذا كان ال page هو topics .. ضع هنا الصفحه التي فيها الكود الذي يجلب ال topics
وهكذا
طبعا ليس المفروض ان تضع include .. ممكن ان تضع فورا الكود.

الان لتفرض اننا دخلنا صفحة المقالات وكان عنوانها هكذا : index.php?page=topics
وهنا تم عرض المقالات واحد تلو الاخر.. وبجانب كل مقال الخيار "تعديل" ..
عندما تضغط على خيار التعديل ستذهب على صفحة التعديل والتي هي على نفس الصفحه ولكن نحدد اكشنز.. بمعنى اكشن داخل اكشن.. فيصبح index.php?page=topic&action=edittopic
ولكن هذا غير صحيح 100%
لاننا يجب ان نرسل متغير اخر وهو رقم الاي دي للموضوع المراد تعديله
فيصبح لدينا العنوان هكذا:
index.php?page=topic&action=edittopic&id=223
هذا كل شئ
اذا في عندك شئ معين بدك اعمله قلي بالتحديد وبالضبط شو وانا بعملك اياه






__________________
لا اله الا انت سبحانك اني كنت من الظالمين
EsKi غير متواجد حالياً   قديم 09-06-2005, 01:06 AM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#7 (permalink)  

شكرا على الرد
لكني استخدمت طريقة أسهل
خليت الوصلات كلها:

كود PHP:
<a href="show.php?id=<? echo $id?>">
وفي ملف ثاني كتبت الأمر التالي
كود PHP:
$query="SELECT * FROM magzen Where id=$limit '$id'"






الرجل الخارق غير متواجد حالياً   قديم 09-06-2005, 09:06 AM
رد مع اقتباس
رد


 

أدوات الموضوع

تعليمات المشاركة
لا تستطيع كتابة مواضيع
لا تستطيع كتابة ردود
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة



الساعة الآن: 07:43 AM بتوقيت المملكة العربية السعودية