Multiple Image Upload & DB Insert

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
dtravlos
Δημοσιεύσεις: 244
Εγγραφή: 29 Ιαν 2009 15:03
Τοποθεσία: Keratsini
Επικοινωνία:

Multiple Image Upload & DB Insert

Δημοσίευση από dtravlos » 08 Ιούλ 2010 00:35

Καλησπέρα! Έχω την παρακάτω φόρμα με την οποία κάνω καταχώρηση στη βάση και Upload στο server κάποια δεδομένα-εικόνες μέσω της λούπας for. Μπορεί κανείς να με βοηθήσει στο πώς θα ανεβάζω τα αρχεία στο server; Σας παραθέτω τον κώδικα της φόρμας και τον κώδικα για την αποθήκευση μέχρι εκεί που κόλησα.
Ευχαριστώ!

Η φορμα:

Κώδικας: Επιλογή όλων

<?php
						$imageresult = mysql_query&#40;"SELECT * FROM suitesimages WHERE suite_id = ".$suiteRow&#91;'suite_id'&#93;."", $db&#41;;
						$num = mysql_num_rows&#40;$imageresult&#41;;
						
						if&#40;$num != 0&#41;
						&#123;
							$main_image = 0;
							while&#40;$imageRow = mysql_fetch_array&#40;$imageresult&#41;&#41;
							&#123;
				?>
								<img src="../images/suites/<?php echo $imageRow&#91;'suite_id'&#93;; ?>/<?php echo $imageRow&#91;'image_id'&#93; ?>_s.jpg" />
				<?php
							&#125;
				?>
				<?php
							for&#40;$i=1; $i<=5; $i++&#41;
							&#123;
				?>	
								<div class="row">
								<label>Image Title EN</label>
								<input type="text" name="ititle&#91;<?php echo $i ?>&#93;" />
								</div>
								<div class="row">
								<label>Image Title RU</label>
								<input type="text" name="ititle&#91;<?php echo $i ?>&#93;" />
								</div>
								<div class="row">
								<label>Image small</label>
								<input type="file" name="upload_small" />
								</div>
				<?php
							&#125;
						&#125;
						else
						&#123;
							for&#40;$i=1; $i<=5; $i++&#41;
							&#123;
								if&#40;$i == 1&#41;
								&#123;
									$main_image = 1;
								&#125;
								else
								&#123;
									$main_image = 0;
								&#125;
				?>
								<div class="row">
								<label>Image Title EN</label>
								<input type="text" name="ititle&#91;<?php echo $i ?>&#93;" />
								</div>
								<div class="row">
								<label>Image Title RU</label>
								<input type="text" name="ititle&#91;<?php echo $i ?>&#93;" />
								</div>
								<div class="row">
								<label>Image small</label>
								<input type="file" name="upload_small" />
								</div>
				<?php
							&#125;
						&#125;
				?>
Η αποθήκευση:

Κώδικας: Επιλογή όλων

if&#40;isset&#40;$submit&#41;&#41;
					&#123;
for&#40;$i=1; $i<=10; $i++&#41;
						&#123;
							mysql_query&#40;"INSERT INTO suitesimages &#40;imagetitle_en, imagetitle_ru, suite_id, image_main&#41; VALUES &#40;'$ititle_en&#91;$i&#93;', '$ititle_ru&#91;$i&#93;', $sid, $main_image&#41;", $db&#41;;
							$pk = mysql_insert_id&#40;&#41;;

από δω και πέρα δεν μπορώ να ανεβάσω τα αρχεία...

cocoflop
Δημοσιεύσεις: 46
Εγγραφή: 23 Αύγ 2007 19:51

Multiple Image Upload & DB Insert

Δημοσίευση από cocoflop » 09 Ιούλ 2010 01:52

Δες εδώ περισσότερες λεπτομέρειες σχετικά με το Upload αρχείων.
www.tizag.com/phpT/fileupload.php

Αυτή είναι η δική μου η τεχνική (μόνο για τις φωτογραφίες):

Η φόρμα σου από εδώ και στο εξής θα έχει:
<input type="file" name="upload_small1" />
<input type="file" name="upload_small2" />
<input type="file" name="upload_small3" />
<input type="file" name="upload_small4" />
<input type="file" name="upload_small5" />
Ενώ κατά το POST θα κάνεις αυτόν τον έλεγχο:

Κώδικας: Επιλογή όλων

$sqlFields = array&#40;&#41;;
$sqlValues = array&#40;&#41;;

for &#40;$i = 1; $i <= 5; $i++&#41;
&#123;
	$fileTagName = "upload_small" . $i;

	$targetPath = "./uploads/";
	$targetFilename = $targetPath.$_FILES&#91;$fileTagName&#93;&#91;"name"&#93;; 

	if &#40;$_FILES&#91;$fileTagName&#93;&#91;"size"&#93; > 0&#41;
	&#123;
		if&#40;move_uploaded_file&#40;$_FILES&#91;$fileTagName&#93;&#91;"tmp_name"&#93;, $targetFilename&#41;&#41;
		&#123;			
			print&#40;"The file " .  $_FILES&#91;$fileTagName&#93;&#91;"name"&#93; . " has been uploaded"&#41;;
			array_push&#40;$sqlFields, "database_image_field_" . $i&#41;;
			array_push&#40;$sqlValues, $_FILES&#91;$fileTagName&#93;&#91;"name"&#93;&#41;;
		&#125;
		else
			print&#40;$_FILES&#91;$fileTagName&#93;name&#93; . " upload Error" . $_FILES&#91;$fileTagName&#93;&#91;"error"&#93;&#41;;
	&#125;
&#125;

if &#40;sizeof&#40;$sqlFields&#41; > 0&#41;
&#123;
	$txtSqlFields = implode&#40;", ", $sqlFields&#41;;
	$txtSqlValues = implode&#40;", ", $sqlValues&#41;;
	$query = "INSERT INTO suitesimages &#40;$txtSqlFields&#41; VALUES &#40;$txtSqlValues&#41;", $db&#41;;
&#125;

Καλό ε; :lol:

dtravlos
Δημοσιεύσεις: 244
Εγγραφή: 29 Ιαν 2009 15:03
Τοποθεσία: Keratsini
Επικοινωνία:

Multiple Image Upload & DB Insert

Δημοσίευση από dtravlos » 09 Ιούλ 2010 11:00

Καλημέρα! Ευχαριστώ για τη βοήθεια! Το πρόβλημα βρέθηκε... 3 μέρες προσπαθούσα να ανεβάσω τα αρχεία με 12348123 τρόπους και χθες τυχαία κοιτάω πως η φόρμα δεν είχε enctype.... Αυτό ήταν... πήρα χάπια μετά!!! :hammer: :hammer: :hammer: :hammer: :pint:

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης