|
Posted by Al on 02/03/06 16:20
Erwin Moller wrote:
> Hi Johnny,
>
> >
> > <?php
> >
> > $table = "name of table here";
> > $file = "absolute path to file uploaded /" ;
> > $new_name = "list.csv"; // new name of the file uploaded
> >
> >
> > $file_name = ($new_name) ? $new_name : $_FILES["upfile"]["name"];
>
> I do not understand the reason for this line/test.
> It always evalute to true, so $file_name will always be $new_name.
>
> Did you copy it from another file that needs this test?
>
>
> >
> >
> > $path = $file.$file_name ;
>
> OK, so path is now:absolute path to file uploaded/list.csv
>
>
> >
> >
> > if (copy($upfile, $path))
>
> What is $upfile?
> Udefined as far as I can see.
>
> > {
> > echo "upload Ok";
> >
> > } else {
> > echo "upload failed";
> > }
> >
> >
> > $sql = "LOAD DATA INFILE '$path' FIELDS INTO TABLE $table
> > (field1,field2) TERMINATED BY ';' LINES TERMINATED BY '\r\n' IGNORE 1
> > LINES " or die();
>
> You just create a string here.
> Why add or die(); ???
>
> I would advise you to put a few echo's in your script to check if the values
> you use contain what you expect them to contain.
> For starters: The name of an uploaded file in the tempdirectory is not the
> filename specified by the sender.
>
> Regards,
> Erwin Moller
Yeah, basically I don't think your filecopy is actually working.
Assuming you're relying on $upfile to be automatically globaled from
the $_FILES upload, then I still don't think just using copy() works
like that. You need to give copy() the filename, not the array
containing the file's details (which $upfile is if register_globals is
on).
Also, as Erwin said, you never actually execute an SQL query, you just
make the string.
You need something more like:
$sql = "LOAD DATA INFILE '$path' FIELDS INTO TABLE $table
(field1,field2) TERMINATED BY ';' LINES TERMINATED BY '\r\n' IGNORE 1
LINES";
$result = mysql_query($sql) or die("Query failed");
See http://uk.php.net/manual/en/function.mysql-query.php for examples
on executing SQL statements (and slightly better ways of dealing with
query failure.)
Navigation:
[Reply to this message]
|