سؤال

ولدي حلقة في حين أن يذهب من خلال الجدول وأنا أردد على النتائج في غضون ذلك، ولدي أيضا حلقة في حين أن ينظر إلى الدليل صورة وأنا يمكن إخراج المسارات إلى الصور. مشكلتي هي أنني أريد لإخراج مسار صورة في الآخر حين حلقة حيث بلدي أتش تي أم أل وعلامة صورة يقيم. لقد حاولت وضع واحد حلقة في حين داخل الآخر، ولكن واحدة من نتائج حين في حين تتكرر. كيف يمكنني اتخاذ متغير خارج لأول مرة في حين حلقة للصور ووضعها داخل الآخر أثناء حلقة وصدى ذلك.

وUPDATE أنا حصلت على العمل كان الجميع يقولون لي الشيء الصحيح أنا بطيء فقط. I تعديل التعليمات البرمجية أدناه حيث تقول بيانات النموذج الاستيلاء على إدراج بيانات النموذج، هو ما كنت بحاجة للقيام به.

والشكر

        /* LOOP THROUGH IMAGES */
        $myDir = dir("images/");
        while(($file = $myDir->read()) !==false){

            if(!is_dir($file)){

            echo "$file";

            }
        }/*SHOE IMAGE WHILE LOOP ENDS*/


        /* LOOP THROUGH SHOEDATA TABLE */

        $results = mysql_query("SELECT * FROM shoeData");


        while($row = mysql_fetch_array($results)){

        $name = $row['name'];
        $about = $row['about'];
        $company = $row['company'];
        $buy = $row['buy'];
        $tags = $row['tags'];
        $id = $row['id'];



        /* ECHO THE SHOEDATA RESULTS */     

            echo "<div class='span-8'>";


                echo "<ul>";
                    echo "<li>$name</l1>";
                    echo "<li>$about</l1>";
                    echo "<li>$company</l1>";
                    echo "<li><a href='$buy'>BUY</a></l1>";
                    echo "<li>$tags</l1>";
                echo "</ul>";




            echo "</div>";





        }/*SHOEDATA WHILE LOOP ENDS */

-----------------------UPLOAD SCRIPT UPDATE----------------------

Currently My upload script will move my files but their is nothing currently inputting a field into my database, how would I modify this script to also upload a link to my images in the table with


    if ((($_FILES["file"]["type"] == "image/gif")
    || ($_FILES["file"]["type"] == "image/jpeg")
    || ($_FILES["file"]["type"] == "image/png")
    || ($_FILES["file"]["type"] == "image/pjpeg"))
    && ($_FILES["file"]["size"] < 2000000))
      {
      if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
        }
      else
        {
        echo "Upload: " . $_FILES["file"]["name"] . "<br />";
        echo "Type: " . $_FILES["file"]["type"] . "<br />";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

/ <م> ------------------ GRAB استمارة البيانات ---------------------- ------- /

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

    $company = $_POST['company'];
    $buy = $_POST['buy'];
    $tags = $_POST['tags'];
    $imageName1 = $_FILES["file"]["name"];

/ <م> ------------------ INSERT INTO DATABASE ---------------------- /

$sql = "INSERT INTO shoeData (name,about,company,buy,tags,image)VALUES(
\"$name\",
\"$about\",
\"$company\",
\"$buy\",
\"$tags\",
\"$imageName1\"
)";

$results = mysql_query($sql)or die(mysql_error());

        if (file_exists("images/" . $_FILES["file"]["name"]))
          {
          echo $_FILES["file"]["name"] . " already exists. ";
          }
        else
          {
          move_uploaded_file($_FILES["file"]["tmp_name"],
          "images/" . $_FILES["file"]["name"]);



          echo "Stored in: " . "images/" . $_FILES["file"]["name"];

        }
      }
    else
      {
      echo "Invalid file" . "<br/>";
      echo "Type: " . $_FILES["file"]["type"] . "<br />";
      }
هل كانت مفيدة؟

المحلول

وتحتاج للاستعلام عن البيانات الحذاء الخاص بك من قاعدة البيانات ومن ثم لكل واحدة من هذه كنت قد الاستعلام، وطلب صورة مطابقة من خلال وظيفة التي تأخذ اسم الصورة أو شيء كمعلمة.

وبعد ذلك في أن وظيفة يمكن يتكرر خلال جميع الصور الخاصة بك والعثور على واحد يطابق الحذاء كنت قد حصلت. العودة أن صورة ملف $ للاستعلام قاعدة البيانات الخاصة بك.

وحتى داخل حلقة الاستعلام الخاص بك، استدعاء الدالة التي الاستعلام (حلقات عبر) الصور العثور على الصورة الصحيحة، مطابقة البيانات حذاء قمت فقط لقاعدة البيانات الخاصة بك.

والآن يمكنك صدى هذا الملف $ وجميع البيانات الأخرى.

نصائح أخرى

وكما ذكر، تحتاج إلى تحديد الصورة التي ينبغي أن تستخدم لوالأحذية في قاعدة البيانات:

ALTER TABLE shoeData ADD COLUMN image VARCHAR(256);
UPDATE shoeData set image='path/to/image.jpg' WHERE id=1;

وبعد ذلك يمكنك انتزاع صورة الحذاء في حلقة الرئيسية الخاصة بك:

while($row = mysql_fetch_array($results)){
 $image = $row['image'];
 printf('<img src="/images/%s" alt="" />', htmlentities($row['image']));

 ....
 Rest of the loop
 ....

}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top