Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL]Łamanie wiersza w sql
Forum PHP.pl > Forum > Przedszkole
seboxp
Witam, pytanie pewnie proste ale nie mogę sobie poradzić z bazą danych która przesyła mi na stronę text który nie jest sformatowany tak jak bym chciał.
  1. UPDATE `ps_configuration` SET `value` = 'Nip - 111111111 \r\n Regon - 22222222222\r\n Nr. konta: 12 1212 1251 1111 1212 1212 1212) ' WHERE `ps_configuration`.`id_configuration` = 494


Ma to wyglądać tak:

Nip - 111111111
Regon - 22222222222
Nr. konta: 12 1212 1251 1111 1212 1212 1212

Niestety tak jak jest teraz zapisane nie ma łamania lini (enteru) po nipie i regonie
trueblue
Bo w HTML do łamania linii w tekście używa się <BR>, a nie \r\n.

1. Możesz zamienić "\r\n" na <BR> w zapytaniu.
2. Możesz zamienić "\r\n" na <BR> w PHP (nl2br).
3. Możesz wstawić tekst w tag <PRE></PRE>.
4. Możesz sformatować tekst w CSS przy użyciu właściwości white-space.
viking
A ten tekst nie może być zapisany np jako json z odpowiednimi kluczami?
seboxp
Cytat(trueblue @ 12.01.2021, 19:48:43 ) *
Bo w HTML do łamania linii w tekście używa się <BR>, a nie \r\n.

1. Możesz zamienić "\r\n" na <BR> w zapytaniu.
2. Możesz zamienić "\r\n" na <BR> w PHP (nl2br).
3. Możesz wstawić tekst w tag <PRE></PRE>.
4. Możesz sformatować tekst w CSS przy użyciu właściwości white-space.


Ale jak dam w bazie danych <br> to na stronie otrzymam <br> zamiast łamania lini
To jest sklep na prestashop gdzie w panelu admina wpisuje w pole text który jest później wysyłany do bazy danych.
w pliku php jest taka funkcja
  1. 'shop_details' => Configuration::get('PS_SHOP_DETAILS'),
trueblue
Być może w szablonie lub kodzie znaczniki są zamieniane na encje.
Podałem Ci jeszcze inne sposoby.
seboxp
Cytat(trueblue @ 12.01.2021, 20:09:09 ) *
Być może w szablonie lub kodzie znaczniki są zamieniane na encje.
Podałem Ci jeszcze inne sposoby.


Nie bardzo mi to pomogło, interesuje mnie złamanie lini juz w sql jesli jest taka mozliwość, nie bardzo wiem jak przekształcić ten kod z nl2br() by to działało
dublinka
Moze to cos pomoze

https://www.prestashop.com/forums/topic/534...ithin-features/
seboxp
Może inaczej, tutaj wstawiam kod php modułu contactinfo
  1. $contact_infos = [
  2. 'company' => Configuration::get('PS_SHOP_NAME'),
  3. 'address' => [
  4. 'formatted' => AddressFormat::generateAddress($address, array(), '<br />'),
  5. 'address1' => $address->address1,
  6. 'address2' => $address->address2,
  7. 'postcode' => $address->postcode,
  8. 'city' => $address->city,
  9. 'state' => $is_state_multilang ? $state_name[$this->context->language->id] : $state_name,
  10. 'country' => (new Country($address->id_country))->name[$this->context->language->id],
  11. ],
  12. 'phone' => Configuration::get('PS_SHOP_PHONE'),
  13. 'fax' => Configuration::get('PS_SHOP_DETAILS'),
  14. 'email' => Configuration::get('PS_SHOP_EMAIL'),
  15. ];
  16.  
  17. return [
  18. 'contact_infos' => $contact_infos,
  19. 'display_email' => Configuration::get('PS_CONTACT_INFO_DISPLAY_EMAIL'),
  20. ];
  21. }
  22.  


teraz chce ten kod przerobić tak by ta funkcja działała

  1. <?php
  2. echo nl2br("One line.\nAnother line.");
  3. ?>


Rozumiem że muszę zmienić ten wiersz:
  1. 'fax' => Configuration::get('PS_SHOP_DETAILS'),


Tylko nie umiem go odpowiednio przerobić, w php jestem dość zielony sadsmiley02.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.