Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

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

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

Απάντηση
ritsoni
Δημοσιεύσεις: 27
Εγγραφή: 15 Δεκ 2010 01:51

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από ritsoni » 15 Δεκ 2010 02:24

Γεια σας θέλω λίγη βοήθεια,

μέσω της παρακάτω φόρμας ανεβάζω κείμενο και μια εικόνα στη ΒΔ μου, όμως θα ήθελα η εικόνα να μην είναι υποχρεωτική, να μην χρειάζεται δηλαδή ο χρήστης να ανεβάσει την εικόνα υποχρεωτικά για να σταλεί η όλη φόρμα(εικόνα και κείμενο), πως θα το πετύχω ;

έως τώρα ανεβαίνει το κείμενο και η εικόνα στη ΒΔ κανονικά, απλά άν δεν επιλέξω κάποια εικόνα προς ανέβασμα, το κείμενο δεν θα ανεβεί επίσης ΓΙΑΤΙ συμβαίνει αυτό ;

θέλω και αν κάποιος δεν επιλέξει κάποια εικόνα για να ανεβάσει, να μπορεί να ανεβάσει το κείμενο του μόνο αν πατήσει αποστολή

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

if(isset($_POST['send'])) {
$lostitlos = $_POST['titlos1'];

$maxFileSize = "1000000";

$image_array = array("image/jpeg","image/jpg","image/gif","image/bmp","image/pjpeg","image/png"); // valid image type

$fileType = $_FILES['picpic']['type']; 

if (in_array($fileType, $image_array)) 
{

 if(is_uploaded_file($_FILES['picpic']['tmp_name'])) 
 {
        if&#40;$_FILES&#91;'picpic'&#93;&#91;'size'&#93; < $maxFileSize&#41;
            &#123;
                  $img = addslashes &#40;file_get_contents&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;;

        $cherry = "INSERT INTO thiki &#40;titlos,imgData&#41; VALUES &#40;'$lostitlos','$img'&#41;";

  mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;
  $msg = "Ανέβηκε";
    &#125;
else 
	 &#123;
     
	     $msg = 'Ξεπερνάει το όριο του 1MB ';
		 
	     &#125;
   &#125;
&#125;
else
&#123;
$msg = 'Εσφαλμένη εικόνα ';
&#125;

&#125;


<form action="index.php"  method="post" enctype="multipart/form-data" >
<input type="text" name="titlos1" /><br />
<input name="picpic" type="file" />
<input type="submit" name="send" value="αποστολή"  />
</form>

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από Apostolis_38 » 15 Δεκ 2010 09:36

Βγάλε το $cherry κ.λ.π. έξω από το

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

 if&#40;is_uploaded_file&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41; 
Ακόμα καλύτερα μπορείς να βάλεις να γίνεται η καταχώρηση του κειμένου και μετά να δίνεις ένα link το οποίο αν το πατήσει ο χρήστης να τον οδηγεί στην σελίδα του upload image.

Επίσης αν τυχόν το πεδίο για την φωτογραφία είναι not null μπορείς κατά την καταχώρηση του κειμένου να δίνεις αυτόματα ένα λεκτικό no_image ή κάτι τέτοιο.

ritsoni
Δημοσιεύσεις: 27
Εγγραφή: 15 Δεκ 2010 01:51

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από ritsoni » 15 Δεκ 2010 15:08

Γεια σου Απόστολε

έβγαλα το $cherry έξω από το

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

 if&#40;is_uploaded_file&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41; 
αλλά πάλι αν δεν επιλέξω και μια εικόνα δεν ανεβαίνει τίποτα ! Γιατί ;

Άβαταρ μέλους
kostasxx
Δημοσιεύσεις: 56
Εγγραφή: 08 Δεκ 2010 21:56
Τοποθεσία: Αθήνα
Επικοινωνία:

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από kostasxx » 15 Δεκ 2010 16:05

Απλά βάλε έναν έλεγχο εάν έγινε Post κάποιο αρχείο, αλλιώς κάνε import στη βάση μόνο το κείμενο.
ritsoni έγραψε:
if(isset($_POST['send'])) {
$lostitlos = $_POST['titlos1'];

$maxFileSize = "1000000";

$image_array = array("image/jpeg","image/jpg","image/gif","image/bmp","image/pjpeg","image/png"); // valid image type

$fileType = $_FILES['picpic']['type'];

if (isset($_FILES['picpic']['type']) {
if (in_array($fileType, $image_array))
{

if(is_uploaded_file($_FILES['picpic']['tmp_name']))
{
if($_FILES['picpic']['size'] < $maxFileSize)
{
$img = addslashes (file_get_contents($_FILES['picpic']['tmp_name']));

$cherry = "INSERT INTO thiki (titlos,imgData) VALUES ('$lostitlos','$img')";

mysql_query($cherry) or die(mysql_error());
$msg = "Ανέβηκε";
}
else
{

$msg = 'Ξεπερνάει το όριο του 1MB ';

}
}
}
else
{
$msg = 'Εσφαλμένη εικόνα ';
}
} else {
$cherry = "INSERT INTO thiki (titlos,imgData) VALUES ('$lostitlos','')";
mysql_query($cherry) or die(mysql_error());
$msg = "Έγινε η καταχώρηση χωρίς εικόνα.";
}

}


<form action="index.php" method="post" enctype="multipart/form-data" >
<input type="text" name="titlos1" /><br />
<input name="picpic" type="file" />
<input type="submit" name="send" value="αποστολή" />
</form>
Αν δε κοιτάς εκέι που θες να πας... Θα πας εκεί που κοιτάς. Όταν μου το έλεγαν εγώ κοίταγα το ντουβάρι.
Web Design
http://www.stockatzidiko.gr / http://www.islandzakynthos.com/bookit

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από Apostolis_38 » 15 Δεκ 2010 18:05

Φαντάζομαι πως είχες βάλει το query σε σημείο που "έπρεπε" να ανέβει η εικόνα για να φτάσει μέχρι εκεί το script.
Ενας σωστός τρόπος είναι αυτός που έγραψε ο kostasxx.

ritsoni
Δημοσιεύσεις: 27
Εγγραφή: 15 Δεκ 2010 01:51

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από ritsoni » 15 Δεκ 2010 18:12

Γεια σου κι εσένα Κωστή,

κάθισα και το ξανά έγραψα απο την αρχή

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

$link = mysql_connect&#40;'localhost', 'root', ''&#41;;
if &#40;!$link&#41; &#123;
    die&#40;'Μη σύνδεση &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;
$db_selected = mysql_select_db&#40;'mydb', $link&#41;;
if &#40;!$db_selected&#41; &#123;
    die &#40;'Σφάλμα ΒΔ &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;

if&#40;isset&#40;$_POST&#91;'send'&#93;&#41;&#41; &#123;

$lostitlos = $_POST&#91;'titlos1'&#93;;

$maxFileSize = "1000000";
$image_array		= array&#40;"image/jpeg","image/jpg","image/gif","image/bmp","image/pjpeg","image/png"&#41;;
$fileType = $_FILES&#91;'picpic'&#93;&#91;'type'&#93;;
 
$msg = '';

if &#40;isset&#40;$fileType&#41; &#123;
if &#40;in_array&#40;$fileType, $image_array&#41;&#41;
&#123;

if&#40;is_uploaded_file&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;
&#123;
if&#40;$_FILES&#91;'picpic'&#93;&#91;'size'&#93; < $maxFileSize&#41;
&#123;
$img = addslashes &#40;file_get_contents&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;;

$cherry = "INSERT INTO thiki &#40;titlos,imgData&#41; VALUES &#40;'$lostitlos','$img'&#41;";

mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;
$msg = "Ανέβηκε";
&#125;
else
&#123;

$msg = 'Ξεπερνάει το όριο του 1MB ';

&#125;
&#125;
&#125;
else
&#123;
$msg = 'Εσφαλμένη εικόνα ';
&#125;
&#125; else &#123;
$cherry = "INSERT INTO thiki &#40;titlos,imgData&#41; VALUES &#40;'$lostitlos',''&#41;";
mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;
$msg = "Έγινε η καταχώρηση χωρίς εικόνα.";
&#125;
&#125;

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

<html>
     <body>
	 <span style="color&#58;#FF0000"><?php echo $msg; ?></span><br />
 
        <form action="index.php" method="post" enctype="multipart/form-data" >
<input type="text" name="titlos1" /><br />
<input name="picpic" type="file" />
<input type="submit" name="send" value="αποστολή" />
</form>
    </body>
</html>
Έτσι όμως εμφανίζεται το εξής ΛΑΘΟΣ,

Parse error: parse error in Η:\www\apostolh.php on line 27

δηλαδή σε εκείνο το σημείο που μου είπες να προσθέσω,
if (isset($fileType) {
Τι μπορεί να κάνω λάθος πραγματικά δεν έχω καταφέρει να το κάνω να δουλέψει, HELP PLZ.... :oops: :beauty: :myeye:
Τελευταία επεξεργασία από το μέλος ritsoni την 15 Δεκ 2010 18:16, έχει επεξεργασθεί 1 φορά συνολικά.

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από Apostolis_38 » 15 Δεκ 2010 18:16

ritsoni έγραψε: if (isset($fileType)
Το parse error σημαίνει ότι κάπου δεν κλείνει σωστά ο κώδικας if (isset($fileType))

Προσεχέτα αυτά στην php, είναι ικανά να σε τρελλάνουν :D

ritsoni
Δημοσιεύσεις: 27
Εγγραφή: 15 Δεκ 2010 01:51

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από ritsoni » 15 Δεκ 2010 19:52

Αποστόλη τώρα εμφανίζεται, όντως δεν είδα πως έλειπε μια παρένθεση εκεί :oops:

ΟΜΩΣ πάλι δυστυχώς δεν ανεβάζει τίποτα αν δεν έχω επιλέξει και μια εικόνα, το κείμενο δεν ανεβαίνει.. αρχίζω να απογοητεύομαι, κόλλησα

τι φταίει ;

πίκανας

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

CREATE TABLE IF NOT EXISTS `thiki` &#40;
  `id` int&#40;11&#41; NOT NULL,
  `titlos` varchar&#40;200&#41; NOT NULL,
  `imgData` blob NOT NULL
&#41;

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από Apostolis_38 » 15 Δεκ 2010 20:04

Τα πεδία είναι NOT NULL. Οπότε πρέπει κάτι να καταχωρηθεί στο field.

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

$msg = 'Εσφαλμένη εικόνα ';
&#125; 
&#125; else &#123;
$imgData = "no_image";
$cherry = "INSERT INTO thiki &#40;id,titlos,imgData&#41; VALUES &#40;'".$id."','".$lostitlos."','".$imgData."'&#41;"; 
κ.λ.π. κ.λ.π.


Και πρέπει να "πιάσεις" και το id γιατί απ' ότι βλέπω δεν είναι auto increment.

Επίσης, δες άλλα post εδώ μέσα για το θέμα της καταχώρησης εικόνας σε mysql.
Καλό είναι να καταχωρείς το path σε char/varchar field κι όχι την εικόνα την ίδια.

ritsoni
Δημοσιεύσεις: 27
Εγγραφή: 15 Δεκ 2010 01:51

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από ritsoni » 15 Δεκ 2010 20:24

Απόστολε δοκίμασα όπως είπες

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

else &#123;
$imgData = "no_image"; 
$cherry = "INSERT INTO thiki &#40;titlos,imgData&#41; VALUES &#40;'$lostitlos','$imgData'&#41;";
mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;
$msg = "Έγινε η καταχώρηση χωρίς εικόνα.";
&#125;
ή ακόμα και αυτό

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

else &#123;
$img = "no_image"; 
$cherry = "INSERT INTO thiki &#40;titlos,imgData&#41; VALUES &#40;'$lostitlos','$img'&#41;";
mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;
$msg = "Έγινε η καταχώρηση χωρίς εικόνα.";
&#125;
αλλά δεν έγινε τίποτα πάλι το ίδιο πρόβλημα έχω, όταν δεν έχω επιλέξει εικόνα δεν ανεβαίνει το κείμενο και μου λεει το Σφάλμα,

Εσφαλμένη εικόνα

από το παραπάνω else δηλαδή το,

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

else
&#123;
$msg = 'Εσφαλμένη εικόνα ';
&#125;

&#125;


* Το id το έκανα Auto-Increment !

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από Apostolis_38 » 15 Δεκ 2010 20:36

Ναι γιατί νομίζει πως ανεβάζεις κάτι που δεν είναι εικόνα.

Περίμενε λιγάκι.

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από dva_dev » 15 Δεκ 2010 20:50

Δοκίμασε να κάνεις τον έλεγχο αν έχει ανέβει αρχείο κάπως έτσι

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

//if &#40;isset&#40;$fileType&#41;&#41;
if &#40;!empty&#40;$_FILES&#41;&#41;

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από Apostolis_38 » 15 Δεκ 2010 21:05

Εγώ θα το έκανα κάπως έτσι

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

$link = mysql_connect&#40;'localhost', 'root', ''&#41;;
if &#40;!$link&#41; &#123;
    die&#40;'Μη σύνδεση &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;
$db_selected = mysql_select_db&#40;'mydb', $link&#41;;
if &#40;!$db_selected&#41; &#123;
    die &#40;'Σφάλμα ΒΔ &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;

if&#40;isset&#40;$_POST&#91;'send'&#93;&#41;&#41; &#123;

$lostitlos = $_POST&#91;'titlos1'&#93;;

$maxFileSize = "1000000";
$image_array = array&#40;"image/jpeg","image/jpg","image/gif","image/bmp","image/pjpeg","image/png"&#41;;
$fileType = $_FILES&#91;'picpic'&#93;&#91;'type'&#93;;
 
if &#40;!empty&#40;$fileType&#41; &#123;
	if &#40;in_array&#40;$fileType, $image_array&#41;&#41;	&#123;
			if&#40;$_FILES&#91;'picpic'&#93;&#91;'size'&#93; < $maxFileSize&#41;	&#123;
				$img = addslashes &#40;file_get_contents&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;;
			&#125;
			else	&#123;
				$msg = 'Ξεπερνάει το όριο του 1MB ';
                                exit;
			&#125;
	&#125;
&#125;
else	&#123;
	$msg = 'Εσφαλμένη εικόνα ';
        exit;
&#125;

if&#40;is_uploaded_file&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;	&#123;
	$cherry = "INSERT INTO thiki &#40;id,titlos,imgData&#41; VALUES &#40;'".$id."','".$lostitlos."','".$imgData."'&#41;";
	$msg1 = "Ανέβηκε";
&#125;
else &#123;
	$imgData = "no_image"; 
	$cherry = "INSERT INTO thiki &#40;id,titlos,imgData&#41; VALUES &#40;'".$id."','".$lostitlos."','".$imgData."'&#41;";
	$msg2 = "Έγινε η καταχώρηση χωρίς εικόνα.";
&#125;
$result = mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;

&#125;
<html>
     <body>
	 <span style="color&#58;#FF0000"><?php if&#40;$result&#41;	&#123;
	echo $msg1;
&#125;
else	&#123;
	echo $msg2;
&#125; ?></span><br />
 
        <form action="index.php" method="post" enctype="multipart/form-data" >
<input type="text" name="titlos1" /><br />
<input name="picpic" type="file" />
<input type="submit" name="send" value="αποστολή" />
</form>
    </body>
</html>

ritsoni
Δημοσιεύσεις: 27
Εγγραφή: 15 Δεκ 2010 01:51

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από ritsoni » 15 Δεκ 2010 21:20

Απόστολε δόκίμασα όπως συμβούλεψες όμως το πρόβλημα παραμένει, ανεβάζει μόνο αν επιλέξω κάποια εικόνα αλλιώς το κείμενο μόνο του δεν ανεβαίνει :

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

<?php
$link = mysql_connect&#40;'localhost', 'root', ''&#41;;
if &#40;!$link&#41; &#123;
    die&#40;'Μη σύνδεση &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;
$db_selected = mysql_select_db&#40;'mydb', $link&#41;;
if &#40;!$db_selected&#41; &#123;
    die &#40;'Σφάλμα ΒΔ &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;

if&#40;isset&#40;$_POST&#91;'send'&#93;&#41;&#41; &#123;

$lostitlos = $_POST&#91;'titlos1'&#93;;

$maxFileSize = "1000000";
$image_array = array&#40;"image/jpeg","image/jpg","image/gif","image/bmp","image/pjpeg","image/png"&#41;;
$fileType = $_FILES&#91;'picpic'&#93;&#91;'type'&#93;;
 
if &#40;!empty&#40;$fileType&#41;&#41; &#123;
   if &#40;in_array&#40;$fileType, $image_array&#41;&#41;   &#123;
         if&#40;$_FILES&#91;'picpic'&#93;&#91;'size'&#93; < $maxFileSize&#41;   &#123;
            $img = addslashes &#40;file_get_contents&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;;
         &#125;
         else   &#123;
            $msg = 'Ξεπερνάει το όριο του 1MB ';
                                exit;
         &#125;
   &#125;
&#125;
else   &#123;
   $msg = 'Εσφαλμένη εικόνα ';
        exit;
&#125;

if&#40;is_uploaded_file&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;   &#123;
   $cherry = "INSERT INTO thiki &#40;id,titlos,imgData&#41; VALUES &#40;'".$id."','".$lostitlos."','".$imgData."'&#41;";
   $msg1 = "Ανέβηκε";
&#125;
else &#123;
   $imgData = "no_image";
   $cherry = "INSERT INTO thiki &#40;titlos,imgData&#41; VALUES &#40;'".$lostitlos."','".$imgData."'&#41;";
   $msg2 = "Έγινε η καταχώρηση χωρίς εικόνα.";
&#125;
$result = mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;

&#125;
?>
<html>
     <body>
    <span style="color&#58;#FF0000">
<?php if&#40;$result&#41;   &#123;
   echo $msg1;
&#125;
else   &#123;
   echo $msg2;
&#125; ?>
</span><br />
 
        <form action="upload3.php" method="post" enctype="multipart/form-data" >
<input type="text" name="titlos1" /><br />
<input name="picpic" type="file" />
<input type="submit" name="send" value="αποστολή" />
</form>
    </body>
</html> 
Εσύ το δοκίμασες και σου δουλεύει ;

γιατί εδώ εμένα απλά μου δείχνει ΛΕΥΚΗ σελίδα και σταματάει αν δοκιμάσω να ανεβάσω μόνο κείμενο !!

..πάντως με εικόνα και κείμενο όπως και πρίν δουλεύει :(

:myeye: :doh: :bouncy:

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Να μην ανεβαίνει η εικόνα υποχρεωτικα, πως ;

Δημοσίευση από Apostolis_38 » 15 Δεκ 2010 21:50

Ναι γιατί σταματάει στο exit.

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

<?php
$link = mysql_connect&#40;'localhost', 'root', ''&#41;;
if &#40;!$link&#41; &#123;
    die&#40;'Μη σύνδεση &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;
$db_selected = mysql_select_db&#40;'mydb', $link&#41;;
if &#40;!$db_selected&#41; &#123;
    die &#40;'Σφάλμα ΒΔ &#58; ' . mysql_error&#40;&#41;&#41;;
&#125;

if&#40;isset&#40;$_POST&#91;'send'&#93;&#41;&#41; &#123;

$lostitlos = $_POST&#91;'titlos1'&#93;;

$maxFileSize = "1000000";
$image_array = array&#40;"image/jpeg","image/jpg","image/gif","image/bmp","image/pjpeg","image/png"&#41;;
$fileType = $_FILES&#91;'picpic'&#93;&#91;'type'&#93;;
 
if &#40;!empty&#40;$fileType&#41;&#41; &#123;
   if &#40;in_array&#40;$fileType, $image_array&#41;&#41;   &#123;
         if&#40;$_FILES&#91;'picpic'&#93;&#91;'size'&#93; < $maxFileSize&#41;   &#123;
            $img = addslashes &#40;file_get_contents&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;;
         &#125;
         else   &#123;
            $msg = 'Ξεπερνάει το όριο του 1MB ';
         &#125;
   &#125;
&#125;
else   &#123;
   $msg = 'Εσφαλμένη εικόνα ';
&#125;


if&#40;is_uploaded_file&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;   &#123;
$imgData = addslashes &#40;file_get_contents&#40;$_FILES&#91;'picpic'&#93;&#91;'tmp_name'&#93;&#41;&#41;;
echo   $cherry = "INSERT INTO thiki &#40;id,titlos,imgData&#41; VALUES &#40;'".$id."','".$lostitlos."','".$imgData."'&#41;";
   $msg1 = "Ανέβηκε";
&#125;
else &#123;
   $imgData = "no_image";
echo   $cherry = "INSERT INTO thiki &#40;id,titlos,imgData&#41; VALUES &#40;'".$id."','".$lostitlos."','".$imgData."'&#41;";
   $msg2 = "Έγινε η καταχώρηση χωρίς εικόνα.";
&#125;
$result = mysql_query&#40;$cherry&#41; or die&#40;mysql_error&#40;&#41;&#41;;

&#125;
?>
<html>
     <body>
    <span style="color&#58;#FF0000">
<?php if&#40;$result&#41;   &#123;
   echo $msg1;
&#125;
else   &#123;
   echo $msg2;
&#125; ?>
</span><br />
 
        <form action="upload3.php" method="post" enctype="multipart/form-data" >
<input type="text" name="titlos1" /><br />
<input name="picpic" type="file" />
<input type="submit" name="send" value="αποστολή" />
</form>
    </body>
</html> 

Το τσέκαρα έτσι και δουλεύει.
Το μόνο που δεν μπόρεσα να ελέγξω είναι το $msg.

Απάντηση

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

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

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