الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اين الخطأ

مغلق
بدأه رفيقة السكون في 27 ديسمبر 2005 · 10 رد · 729 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

:) مرحبا

اتمنى ان يكون هنالك حل لمشكلتي

احاول موقع مكتبة الكترونية وقد وعند تنفيذ لعمليات المشرفين منها الاضافة لاحظ ان البيانات لاتضاف بشكل صحيح الى الجدوال

سوء الاساسية او الفرعية

تم انشاء الجدوال على النحو التالي:

جدول الكتب

CREATE TABLE books (
  book_no int(3) NOT NULL auto_increment,
  book_name varchar(20) NOT NULL default '',
  book_copy varchar(20) NOT NULL default '',
  book_sor int(3) NOT NULL default '0',
  pub_no int(3) default NULL,
  PRIMARY KEY  (book_no)
) TYPE=MyISAM;

جدول دار النشر

CREATE TABLE project (
  pro_no int(3) NOT NULL auto_increment,
  pro_name varchar(40) NOT NULL default '',
  pro_year varchar(10) NOT NULL default '',
  PRIMARY KEY  (pro_no)
) TYPE=MyISAM;

وبعدها برمجة عملية الاضافة

$bookname=$_POST['bookname'];
$copy=$_POST['copy'];
$booksorting=$_POST['booksorting'];



$mycounter=mysql_query("select max(book_no) from books");
$counter=mysql_fetch_row($mycounter);

if($counter<=0)
$book_no=$counter[0];
else
$book_no=$counter[0]+1;

$mybook=mysql_query("insert into books values('','$bookname','$copy','$booksorting','$pub_no')",$db);

برمجة صفحة دار النشر

$name=$_POST['name'];
$place=$_POST['place'];


$mycat=mysql_query("insert into publisher values('','$name','$place')",$db);
#2

ما المشكلة التي تظهر لك ؟

460.gif

#3

المشكلة بالنسبة لي لايتم الاضافة الى الجداول اي ان العلاقات لم تنفذ

بمعنى يوجد الحقل pup_no مفتاح اساسي في جدول النشر وهو مفتاح ثانوي في جدول الكتاب

وعند الاضافة في جدول النشر ثم جدول الكتاب لاحظت انه لم يضاف الرقم تلاقي في جدول الكتاب

وعندي اكثر من جدول بنهم علاقات ولم تنفذ

هل هل الخطاء في العلاقات

ام في الاولوية في الادخال

ام ماذا؟

#4
رفيقة السكون كتب:

بمعنى يوجد  الحقل pup_no مفتاح اساسي في جدول النشر وهو مفتاح ثانوي في جدول الكتاب

عفوا لايوجد حقل pup_no في جدول دار النشر ؟

ويا ليت لو وضعتي كود النموذج ( Form ) حتى يتم التأكد من أسماء المتغيرات

460.gif

#5

اخي المتميز اشكرك اولا جزيل الشكر على المتابعة

الكود بالنسبة لدار النشر

<? 
$db=mysql_connect("localhost","root","");
mysql_select_db("elibrary",$db);
echo "<form action='add_pub.php' method='post'>
name pub  :  <input type='text' name='name'> <br>
place pub :  <input type='text' name='place'> <br>";
echo "<input type='submit' value='add'>
<input type='reset' value='cancel'> </form><br>";   
$name=$_POST['name'];
$place=$_POST['place'];
$mycat=mysql_query("insert into publisher values('$pub_no','$name','$place')",$db);
if(! $mycat)
echo "Is NOT a Good Query";
?>

اما كود واجهة اضافة كتب

<?     
$bookname=$_POST['bookname'];
$copy=$_POST['copy'];
$booksorting=$_POST['booksorting'];
$mycounter=mysql_query("select max(book_no) from books");
$counter=mysql_fetch_row($mycounter);
if($counter<=0)
$book_no=$counter[0];
else
$book_no=$counter[0]+1;
$mybook=mysql_query("insert into books values('','$bookname','$copy','$booksorting','$pub_no')",$db);
if(! $mybook)
echo "Is NOT a Good Query";
else
echo "$bookname  $copy<br>";
?>
#6

السلام عليكم

عفوا الكود غير مرتب ( قد يكون قصور في الفهم عندي ) فلو وضعتي الفكرة حتى أضع الكود كامل إن استطعت خدمتك .

460.gif

#7

اعتذر لعدم توضيح المشكلة واتمنى ان استطيع الان طرحه بشكل واضح

المطلوب عمل مكتبة الكترونية

تم انشاء اكثر من جدول (الكتب,المؤلفين,التاليف"جدول وسيط",دار النشر,المجلات,المشاريع)

حقول جدول الكتب(رقم الكتاب"مفتاح اساسي",اسم الكتاب,التصنيف,رقم دار النشر,طبعة الكتاب)

حقول جدول دار النشر (رقم دار النشر"مفتاح اساسي",اسم دار النشر,المكان )

بعد كتابه كود الاضافة الخاصة بالاثنين

اولا ابد ادخال بيانات جدول دار النشر

ثم جدول الكتاب

فان رقم دار النشر يكون دائما صفر القيمة الافتراضية على الرغم من انها تتغير في جدول دار النشر

اي لاياخذ القيمة من جدول الكتاب لماذا؟

#8
$mybook=mysql_query("insert into books values('','$bookname','$copy','$booksorting','$pub_no')",$db);

متغير pup_no هل يوجد على النموذج أم من أين يأتي بالقيمة ، لأني لا أرى في النموذج ما يدل على وجوده ! وللتأكد هل هو موجود أم لا ؟! اكتبي قبل كود الادخال

echo $pup_no;

تم تعديل هذه المشاركة بواسطة المتميز في 29 ديسمبر 2005 في 19:06

460.gif

#9

اخي المتميز اشكرك اولا جزيل الشكر

ربما لم اكتب الكود كامل

بالنسبة لدار النشر فهنالك ادخال في نموذج ادخال بيانات الكتاب باسم اسم دار النشر وقد استخدمت option value حتى يتم العرض من جدول دار النشر ومن اختيار الاسم والرقم وبعدها يتم اضافة الرقم الى جدول الكتاب

لكن اولا

تظهر البيانات كاملة على سطر واحد وليس على شكل list

ثانيا: هل بالامكان جعل الlist داخل inpute text بحيث ان لم يكن اسم دار النشر موجود في القائمة يكتب مباشرة

<td><select name='pub_no'>

<td> <option value="<?php $rr=mysql_db_query("elibrary"," SELECT * FROM author");

if($rr)

while($row=mysql_fetch_array($rr))

{

echo"$row[1]";"<br>";

}

#10

السلام عليكم

مشكلتك أنك لم تضعي الكود كاملا لذي يصعب على الشخص التعرف على سبب الخلل .

أما بالنسبة لمشكلة الـSelect فضعي الكود هكذا حتى يتم عمل النتائج بشكل تسلسل بواسطة أداة select

<?
$ser=mysql_query("select * from Table1");
$result=mysql_num_rows($ser);
?>
<select name='pub_no'>
<?
for($i=0;$i<$result;$i++){
    $row=mysql_fetch_array($ser);

 ?>
<option value="<?echo $row[pub_no]?>"><?echo $row[pub_no]>
}

?>
</select>

مع مراعاة تغيير اسم الجدول

تم تعديل هذه المشاركة بواسطة المتميز في 1 يناير 2006 في 13:53

460.gif

#11

بإمكانك عمل قائمة Select تكون فيها دور النشر ويكون آخر تسلسل فيها يكون ( دار أخرى ) إذا اخترتيها ظهر لك مربع نص يدخل فيها اسم دار النشر ، وهذا كودها :

<form action="" method="post" name="formname" id="formname">
 <select name="selectname" onChange="if(this.value == '-') formname.textfield.style.display='block'; else formname.textfield.style.display='none';">
   <option value="1">الاختيار الاول</option>
   <option value="2">الاختيار الثاني</option>
   <option value="3">الاختيار الثالث</option>
   <option value="-">آخر</option>
 </select>
 <br>
 <input type="text" name="textfield" style="display:none; " size="20">
</form>

460.gif

هذا الموضوع مغلق.

مواضيع مشابهة