Skocz do zawartości

Pole Textarea - zapis do bazy osobnego wiersza


flower224

Rekomendowane odpowiedzi

Witam, pomóżcie, chodzi o to iż chciałbym aby każda linijka(wiersz) z pola textarea była zapisywana w bazie jako osobny rekord. Kombinuje i coś mi nie wychodzi:)

<form action="wysylka3.php" method="post">
Adres<br />
<textarea type="text" name="adres" rows="30" cols="100" /></textarea>
</br>Opcje<br />
<select name="opcja">
 <option value="opcja1">opcja1</option>
 <option value="opcja2">Opcja2</option>
</select>
<input type="submit" value="dodaj" />
</form>
<?php
// odbieramy dane z formularza
$adres = $_POST['adres'];
$opcja = $_POST['opcja'];
if($foot and $typ) {

   // łączymy się z bazą danych
   $connection = @mysql_connect('localhost', 'nazwabazy', 'haslo')
   or die('Brak połączenia z serwerem MySQL');
   $db = @mysql_select_db('baza', $connection)
   or die('Nie mogę połączyć się z bazą danych');

   // dodajemy rekord do bazy
   $ins = @mysql_query("INSERT INTO nazwatabeli SET adres='$adres', opcja='$opcja'");

   if($ins) echo "Rekordy zostały dodane poprawnie";
   else echo "Błąd nie udało się dodać nowego rekordu";

   mysql_close($connection);
}
?>

Profesjonalna agencja eventowa Everal

Skuteczne pozycjonowanie https://xseox.pl/pozycjonowanie-stron/

Fotobudka 360 Go4Photo

Odnośnik do komentarza
Udostępnij na innych stronach

Musisz rozbić na linie używajac funkcji np:

https://www.google.pl...l&q=php explode

https://php.net/manua....preg-split.php

po znaku nowej linii ...

Prototyp:

<?php
$ile = 0;
$arrKatT = array();
$arrKatT = explode("\n",$_POST['poletextarea']);
ksort($arrKatT, SORT_LOCALE_STRING);
foreach(array_unique($arrKatT) AS $kategoria)
{
$kategoria = addslashes(trim($kategoria));
if(mb_strlen($kategoria) > 4)
{
/// zapisanie w bazie
$ile++;
}
}
?>

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

W jaki sposób wkomponować to w formularz powyżej bo coś chyba źle robię:/

Musisz rozbić na linie używajac funkcji np:

https://www.google.pl...l&q=php explode

https://php.net/manua....preg-split.php

po znaku nowej linii ...

Prototyp:

<?php
$ile = 0;
$arrKatT = array();
$arrKatT = explode("\n",$_POST['poletextarea']);
ksort($arrKatT, SORT_LOCALE_STRING);
foreach(array_unique($arrKatT) AS $kategoria)
{
$kategoria = addslashes(trim($kategoria));
if(mb_strlen($kategoria) > 4)
{
/// zapisanie w bazie
$ile++;
}
}
?>

Profesjonalna agencja eventowa Everal

Skuteczne pozycjonowanie https://xseox.pl/pozycjonowanie-stron/

Fotobudka 360 Go4Photo

Odnośnik do komentarza
Udostępnij na innych stronach

Od tego chyba jest forum aby zadawać pytania? czy się mylę.

Wprowadziłem wszystko ale w bazie zapisuje zamiast tekstu - tekst "array"

Od Miona dostałeś prawie-gotowca, jeśli nie dajesz rady go wykorzystać to nie posiadasz nawet minimalnej wiedzy z zakresu PHP i odpowiednim działem dla Twojego problemu są Ogłoszenia i Zlecenia.

Profesjonalna agencja eventowa Everal

Skuteczne pozycjonowanie https://xseox.pl/pozycjonowanie-stron/

Fotobudka 360 Go4Photo

Odnośnik do komentarza
Udostępnij na innych stronach

No to masz pecha ...

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

https://www.forum.optymalizacja.com/topic/171751-zlecepole-texterea-dodawanie-wiersza-jako-1-rekord/

Dla osoby znającej się na PHP to zlecenie banalne na 3 min:)

Nie znasz się kompletnie na PHP to skąd możesz wiedzieć czy zlecenie jest banalne czy nie i ile potrwa jego wykonanie?

To, że napiszesz 3 min a nie 30 min nie oznacza, że ktoś wykona zlecenie taniej.

Kody na tanie VPSy i hostingi SEO: 2KT7-JFNM-63E8 , EK6B-1JUJ-M9T6 , R3J5-RCNE-SPH4 , E8NR-U9N3-1TU7 , 3TEH-47B3-2HM6 = rabat 25%
Odnośnik do komentarza
Udostępnij na innych stronach

<form action="wysylka3.php" method="post">
Adres<br />
<textarea type="text" name="adres" rows="30" cols="100" /></textarea>
</br>Opcje<br />
<select name="opcja">
<option value="opcja1">opcja1</option>
<option value="opcja2">Opcja2</option>
</select>
<input type="submit" value="dodaj" />
</form>
<?php
// odbieramy dane z formularza
$adres = $_POST['adres'];
$opcja = $_POST['opcja'];
if($foot and $typ) {

 // łączymy się z bazą danych
 $connection = @mysql_connect('localhost', 'nazwabazy', 'haslo')
 or die('Brak połączenia z serwerem MySQL');
 $db = @mysql_select_db('baza', $connection)
 or die('Nie mogę połączyć się z bazą danych');


$z = 0;
$danestron = $_POST['adres'];
$dane = explode("\n", $danestron);
$ile = count($dane)-1;
for($i = 0; $i<= $ile; $i++)
{
$adres = trim($dane[$z++]);
if(!empty($adres))
{
 // dodajemy rekord do bazy
$ins = @mysql_query("INSERT INTO nazwatabeli SET adres='$adres', opcja='$opcja'");

if($ins) echo "Rekordy zostały dodane poprawnie";
else echo "Błąd nie udało się dodać nowego rekordu";
}
}


 mysql_close($connection);
}
?>

Powinno działać

bilbord_opublikuj_mini.png

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności