Reputation: 1615
I have a form with sets of inputs that can be dynamically created -- see here.
In order to push the values gathered from these inputs to a .csv
sheet and keep them together in a single cell, I am using the following PHP function. It gathers the content from the 3 inputs, saves it to the .csv
in a single cell, and for every new iteration of inputs, it just separates the entries with a "//" but keeps it in the same cell (like this: President, 2015, I was the president// Vice President, 2014, I was the vice president).
PHP
$provincialInvolvement = $_POST["provincialInvolvement"];
$provincialInvolvementValues = "";
$e = 0;
foreach($provincialInvolvement as $piValue)
{
$provincialInvolvementValues .= $piValue;
$e++;
if($e % 3 == 0)
{
$provincialInvolvementValues .= "//";
}
}
My problem is because the last input is a textarea, if a line break is put in (someone hits the enter key) it breaks the form of the .csv
and puts it on a new line.
I am trying to write a function onto the portion of my PHP that, as it logs the value into $provincialInvolvementValues
it removes any linebreaks but I;m having no luck.
Here is the function problem is it doesn't log anything.
$provincialInvolvement = $_POST["provincialInvolvement"];
$provincialInvolvementValues = "";
$e = 0;
foreach($provincialInvolvement as $piValue)
{
$provincialInvolvementValues .= $piValue;
$e++;
$provincialInvolvementValues = preg_replace( "/(\r|\n)/ ", "", $provincialInvolvementValues );
return $provincialInvolvementValues;
if($e % 3 == 0)
{
$provincialInvolvementValues .= "//";
}
}
Upvotes: 0
Views: 43
Reputation: 60190
Maybe try this: preg_replace( "\r?\n\s*", "", $provincialInvolvementValues)
- newlines are usually \n
or \r\n
so this might work better.
Also, the return $provincialInvolvementValues;
is probably wrong in the loop...
Upvotes: 1