webForumDet fria alternativet

radbrytning till en array

9 svar · 327 visningar · startad av mall

mallMedlem sedan jan. 2001135 inlägg
#1

HEj pa er.

Behover hjalp med en grej.

Jag postar fran en form till MYSQL.

Behover ta varje rad fram en TEXTAREA och posta varje rad till egen row i DB.

HLJAP!!! PLIZZZZZZZZZ :q

MatteMedlem sedan aug. 20002 975 inlägg
#2

Testa med

$array = preg_split("/(\r\n|\r|\n)/", trim($_POST['text']));
mallMedlem sedan jan. 2001135 inlägg
#3

Ja. Konstigt.....

Jag skickar bara tva rader men det blir en oandlig looooop av detta. WHY?


				//SEPARATE BREAKS TO ARRAY
				$alt_1_text_1 = split("\\n", trim($alt_1_text));
				
				while($alt_1_text_1)
				{
						echo $alt_1_text."<br>---";
						//mysql_query("INSERT INTO qandgo_survey_answers (answer_text,q_ID,survey_ID) VALUES ('$alt_1_text','$lasq_ID','$survey_ID')", $db);
				}
Kent.JMedlem sedan aug. 2001153 inlägg
#4

För att satsen inne i while(), dvs $alt_1_text_1 alltid retunerar TRUE.

http://se.php.net/while

mallMedlem sedan jan. 2001135 inlägg
#5

Forelsa en losning da. :)

Kent.JMedlem sedan aug. 2001153 inlägg
#6

Du frågade ju bara varför :)

for ($i=0; $i<count($alt_1_text_1); $i++) 
   {
   echo "Rad ".$i.": ".$alt_1_text[$i]."<br>";
   }
MatteMedlem sedan aug. 20002 975 inlägg
#7

Eller foreach

//SEPARATE BREAKS TO ARRAY
$alt_1_text_1 = preg_split("/(\r\n|\r|\n)/", trim($alt_1_text));

foreach ($alt_1_text_1 as $text) {

   $sql = "
     INSERT INTO qandgo_survey_answers (answer_text, q_ID, survey_ID) 
     VALUES ('$text', '$lasq_ID', '$survey_ID')
   ";
   //mysql_query($sql, $db); 
   echo $sql."<br>";

}
mallMedlem sedan jan. 2001135 inlägg
#8

OK. Nu funkar "for"

MEN!!!!

$array = preg_split("/(\r\n|\r|\n)/", trim($_POST['text']));

splittar orden och returnerar en bokstav per rad - jag behover radbrytningssplitning

jag far:
Rad 0: s
Rad 1: v
Rad 2: a
Rad 3: r

Men vill ha:

Rad 0: svarsallternativ 1
Rad 1: svarsallternativ 2

hela koden

$alt_1_text_1 = preg_split("/(\r\n)/", trim($alt_1_text));
				
				for ($i=0; $i<count($alt_1_text_1); $i++) 
				{
					   echo "Rad ".$i.": ".$alt_1_text[$i]."<br>";
				}
MatteMedlem sedan aug. 20002 975 inlägg
#9

Det fungerar när jag testar det:

$alt_1_text = '
svarsallternativ 1
svarsallternativ 2
';

$alt_1_text_1 = preg_split("/(\r\n|\r|\n)/", trim($alt_1_text));

for ($i=0; $i<count($alt_1_text_1); $i++) {
   echo "Rad ".$i.": ".$alt_1_text_1[$i]."<br>";
}
mallMedlem sedan jan. 2001135 inlägg
#10

tack, nu funkar det!

128 ms totalt · 3 externa anrop · v20260731065814-full.16f3d68c
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)