Re: Re: Stuck trying to upload and grab file name
| From: | Karl DeSaulniers | Date: | Wed, 25 Jul 2012 23:04:33 +0000 |
| Subject: | Re: Re: Stuck trying to upload and grab file name | ||
| References: | 1 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-48355@lists.php.net to get a copy of this message | ||
On Jul 25, 2012, at 5:49 PM, Brad wrote:
I revamped my logic, proved the SQL works in a client the way I want and once again, I am hitting the same mysql brick wall. <?php var_dump($_FILES); //db connection require 'dbConnect.php'; //session file require_once('../auth.php'); function uploadList(){Just currious and for my own edification. Why are you trying to store the temp name in your database? You should move and rename the file and then store that name in your database. If I understand temp_name, that name dissapears after done processing. Am I correct everyone? Shouldn't he move the file first and rename then store? and do you store the path in the database or just the name? Because the temp_name var has directory slashes in it and if those are not escaped it wont work. Best, Karl DeSaulniers Design Drumm http://designdrumm.com$file = $_FILES["file"];$memberID = $_SESSION["SESS_MEMBER_ID"];if ($file["type"] == "text/plain"){if ($file["error"] > 0){echo "Return Code: " . $file['error'] . "<br /";}else{dbConnect();mysql_select_db('mailList') or die(mysql_error());$tmp_name = $file["tmp_name"];$presql = "CREATE TABLE IF NOT EXISTS(id MEDIUMINT AUTO_INCREMENT PRIMARY KEY UNIQUE)";{$memberID}$sql = <<<EOFLOAD DATA LOCAL INFILE '{$tmp_name}'ALTER TABLE{$memberID}ADD {$file} VARCHAR(60);FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY'\\''LINES TERMINATED BY "\\r\\n"IGNORE 1 LINESEOF;mysql_query($presql);mysql_query($sql);//var_dump($sql);echo '$sql';if(mysql_error()){echo(mysql_error());}else{print('Import of campaign emails sucessfullinto mysql table.');}}}else{print('Invalid file type. Please make sure it is a textfile.');}} //var_dump($_FILES); uploadList(); ?> ********************************error************************* array(1) { ["file"]=> array(5) { ["name"]=> string(14) "emailsTest.txt" ["type"]=> string(10) "text/plain" ["tmp_name"]=> string(14) "/tmp/phpBKCv3n" ["error"]=> int(0) ["size"]=> int(61) } } $sqlYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ALTER TABLE3ADD Array VARCHAR(60); FIELDS TERMINATED BY ',' OPTIONALLY EN' at line 2 ********************proof it's supposed to work**************** mysql> CREATE TABLE IF NOT EXISTS215(id MEDIUMINT AUTO_INCREMENT PRIMARY KEY UNIQUE); Query OK, 0 rows affected (0.00 sec) mysql> ALTER TABLE215ADD emailList VARCHAR(40); Query OK, 0 rows affected (0.00 sec) Records: 0 Duplicates: 0 Warnings: 0