CRLF to LF PHP


 
Thread Tools Search this Thread
Top Forums Web Development CRLF to LF PHP
# 8  
Old 01-12-2012
Quote:
Originally Posted by GroveTuckey
I thought $fp was going to be a txt file with todays date.
In that case, why didn't you just do fwrite("/path/to/file.txt", $data); ?

Because fwrite doesn't use a file name, it uses a file pointer -- a handy thing provided by the operating system that remembers what point you're writing to the file at and stuff.

But ftp wants a file name. $fp is not a file name. Being you just closed it, anyway, $fp isn't really anything at all by the time you give it to ftp...

Code:
/home/somefolder/public_html/sh/$dateposted.txt

It complained about unexpected "/"[/code] Probably because you didn't put it in quotes the same way you did when you put it in fopen.

Code:
$local_file = $dateposted.txt;

This is wrong too. I have no idea what that would do actually and am surprised it didn't complain about it.
Quote:
and it seemed to try and find a file but missing the .
...because you didn't put it in quotes like you did when you feed it into fopen.

Feed it the same thing you fed fopen, word for word, letter for letter, keystroke for keystroke.

"/home/somefolder/public_html/sh/$dateposted.txt"
# 9  
Old 01-12-2012
So I get this error when I put in

Code:
$local_file = "/home/somefolder/public_html/sh/$dateposted.txt";

Warning: ftp_put() [function.ftp-put]: Can't open that file: No such file or directory in....

I think I did see that last time I tested but did not add that in the things that erred.

I will do better to explain what I have done opposed what I just done.

Thanks again Corona688. I am trying to get the hang of this and not sure I am doing so well.
# 10  
Old 01-12-2012
It probably means what it says; the file really isn't there.

Which means fopen() and fwrite() didn't work.

Did you ever give apache permissions to write to that folder? If you didn't, it can't. By default apache has write-access almost nowhere.

In a root shell:
Code:
chown :apache /home/somefolder/public_html/sh/
chmod g+w /home/somefolder/public_html/sh/

# 11  
Old 01-12-2012
My remote server location was messed up also.

Once I made the code look like so:

Code:
$ftp_path = "/public_html/$dateposted.txt";

Things moved right on along.

One of these days I will get this stuff down.

Thanks again Corona688 for your time.

---------- Post updated at 01:55 PM ---------- Previous update was at 01:52 PM ----------

Quote:
Originally Posted by Corona688
It probably means what it says; the file really isn't there.

Which means fopen() and fwrite() didn't work.

Did you ever give apache permissions to write to that folder? If you didn't, it can't. By default apache has write-access almost nowhere.

In a root shell:
Code:
chown :apache /home/somefolder/public_html/sh/
chmod g+w /home/somefolder/public_html/sh/

I did not see this before I posted. But it was my remote file location that was giving me issues and giving me the error.
This User Gave Thanks to GroveTuckey For This Post:
# 12  
Old 01-12-2012
I didn't realize FTP wasn't using absolute paths either Smilie Glad you got it working.
# 13  
Old 01-12-2012
Yeah me to. Now I have to see if I can get sftp stuff working.
# 14  
Old 01-19-2012
This is what I have using php with phpseclib.

Code:
<?php
$input = $_POST['msg'];
$out = str_replace(array("\r\n"), "\n", $input);
$out = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $input);
$dateposted = date("m-d-Y-His");
$fp = fopen("$dateposted.txt", "w");
fwrite($fp, $out).'&nbsp;';
fclose($fp);

include('Net/SFTP.php');
define('NET_SSH2_LOGGING', NET_SSH2_LOG_COMPLEX);


$sftp = new Net_SFTP('someserver.com');
if (!$sftp->login('username', 'pass')){
exit('Login Failed');
}

$sftp->chdir('/some/path/here/');

$sftp->put("$dateposted.txt",$out);

header("Location: http://somewebsite.com/prodsh.php");
?>

I am sure I did not have to post a reply on what I got to work in its entirety but I like to close the loop on things.

Again I appreciate the help I get.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Replace CRLF between pipe (|) delimiter with LF

Hi Folks! Need a solution for the following :- Source data ------------- 123|123|<CRLF><CRLF><CRLF>|321<CRLF> Required output ------------------ 123|123|<LF><LF><LF>|321<CRLF> <CRLF> represents carriage return <LF> represents line feed Being hunting high and low for a... (10 Replies)
Discussion started by: hishamzz
10 Replies

2. Shell Programming and Scripting

Removing CRLF combo but not CR or LF when alone

What is the command or script to remove CRLF but only when joined? Tried using below but removed all instances of either cat a.txt | tr -d "\r\n" > b.txt (14 Replies)
Discussion started by: qqp
14 Replies

3. Shell Programming and Scripting

Sorting file with CRLF within field, RS=$

OK below is what my sample file looks like. I need to sort by the Primary Key ie: {1:F01SAESVAV0AXXX0466020126} in the first record. Record seperator is $. I tried sort, but it completely messes it up. I am thinking I will need to use something like awk which understands the record seperator... (6 Replies)
Discussion started by: alfredo123
6 Replies

4. Shell Programming and Scripting

Appending CRLF to end of record

I need to append |\r\n (a pipe character and CRLF) at end of each record in Unix to all records where they are not already present. So first check for the presence of |\r\n and if absent append it else do nothing (3 Replies)
Discussion started by: abhilashnair
3 Replies

5. Homework & Coursework Questions

Convert ASCII Text, with CRLF

1. The problem statement, all variables and given/known data: write a script asciiFix.sh that takes an arbitrary number of file paths from the command line and carries out the same analysis on each one. If a file is not Windows ASCII, your script should do nothing to it. For each file that is... (7 Replies)
Discussion started by: kwatt019
7 Replies

6. Shell Programming and Scripting

Issue with a file that contains CRLF

I have a nawk that reads in a log file and outputs a file that matches my search. IFS=" " while read record do `echo $record | nawk 'BEGIN { FS=" " } { type_record=substr($0, 1, 1); if (... (14 Replies)
Discussion started by: Pablo_beezo
14 Replies

7. Shell Programming and Scripting

Converting hex value 7C (for pipe) to CRLF in Unix

I am trying to convert a txt file that includes one long string of data. The lines are separated with hex value 7C (for pipe). I am trying to process this file using SQR (Peoplesoft) so I thought the easiest thing to do would be to replace the eol char with a CRLF in unix so I can just... (4 Replies)
Discussion started by: sfedak
4 Replies

8. AIX

CRLF during SFTP transfer is appearing only in one server

Hello. I have got 3 unix boxes A B C. Box A is being used to prepare some reports. After the reports generation, Box A sftp the reports to Box B and Box C. When I look at the report in Box B and Box C. The reports are different. In Box B, I see using od -x command there is CRLF (\r\n) at the end... (7 Replies)
Discussion started by: panchpan
7 Replies

9. Shell Programming and Scripting

Add CRLF is probably simple!

I am building a script that will execute programs using records/fields in a file as arguments. Before I start testing that, I am working on reading the file properly and using printf to display the fields in the file. I used typeset to format my output. Now all I need is to figure out how to... (1 Reply)
Discussion started by: Skyybugg
1 Replies
Login or Register to Ask a Question