Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] X pierwszych znaków rekordu
bamboo
post
Post #1





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


Jak wyświtlić jakomś liczbe pierwszych znaków z rekordu, dajmy na to że tabela nazywa sie TABELA i chcemy wyświetlić 100 pierwszych znaków z kolumny TRESC, z rekordu którego ID wynosi 1. Jak powinno wyglądać zapytanie lub kod PHP który wyświetli 100 pierwszych znaków tej wartości?

Ten post edytował nospor 15.02.2008, 23:09:43
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Manuala jeszcze nie zamkneli:
Funkcje operujące na tekscie

ps: przenosze


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bamboo
post
Post #3





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


czytałem i szukałem już tego w manualu, lecz niewiem jak sformułować zapytanie żeby to zadziałało...
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




a czego nie rozumiesz w tym przykladzie co podano
Cytat
SELECT SUBSTRING('Quadratically',5,6);
-> 'ratica'

?

  1. SELECT SUBSTRING(twojepole,0,100) twojepole FROM tabela WHERE jakiswarunekjakitamsobiechcesz


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bamboo
post
Post #5





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


Dałem ci punkcika a nawet niesprawdzilem czy działa... bo niedziała... więc jak to zrobić?
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




jesli napisales dokladnie tak jak ci podalem to pewnie ze ci dzialac nie bedzie. za jakiswarunekjakitamsobiechcesz masz wstawic swoj warunek, za "twojepole" masz wstawic twoje pole....

Jesli byles na tyle bystry ze to jednak zmieniles, to podaj caly kod na jaki zmieniles i napisz po ludzku czym objawia sie twoje niedzialanie. Jesli takie rzeczy nie są dla ciebie oczywiste to niech szybko się staną bo szkoda postow na ciagle proszenie o podanie kodu i pytanie o objawy nie dzialania.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bamboo
post
Post #7





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


heh, nie jestem na tyle glupi... moje zapytanie wygląda tak:
  1. SELECT newsid, tytul, tresc, autor, DATA SUBSTRING(tresc,0,100) FROM news ORDER BY newsid DESC LIMIT 3

nawet specjalnie gwiazde zamieniłem za wszystkie nazwy kolumny bo niewiedziałem o co chodzi, niedziało również wtedy gdy tą funkcje postawiłem przed nazwami, tylko że z tą różnicą że gdy było pa nazwach to wyświetla błąd, a gdy jest przed to wyświetla normalnie wartosci, ale całe, wszystkie znaki...

Ten post edytował bamboo 15.02.2008, 23:38:59
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




data SUBSTRING(tresc,0,100) - co to ma byc? A gdzie przecinek?
pozatym wyraźnie w moim kodzie po substring masz jeszcze powtorzone pole. To na wszelki wypadek jakbys w php sie probowal dobrac do tego skrocoengo pola poprzez jego nazwe. To jak z tą bystroscia? tongue.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bamboo
post
Post #9





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


heh, ale jak wpisze nazwe pola po tej funkcji to wartosc sie wogule niewyswietla, reszta wartości wyświetla sie normalnie, poza tą jedną...
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ech,
pokaz caly kod, wlacznie z kodem php ktory to obsluguje. Niech ten kod zawiera zapytanie mysql w mojej wersji, z polem PO. Wszystkim zawsze dziala a tobie jednemu nie, normalnie dziwne winksmiley.jpg


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Synapsa
post
Post #11





Grupa: Zarejestrowani
Postów: 28
Pomógł: 3
Dołączył: 15.06.2007

Ostrzeżenie: (0%)
-----


Zobacz tak
  1. SELECT SUBSTRING(tresc,0,100) tresc FROM news ORDER BY newsid DESC LIMIT 3
Go to the top of the page
+Quote Post
bamboo
post
Post #12





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


niedziała, niewyświtla żadnej wartości...
prosze bardzo o to kodzik:
  1. <?php
  2. $wynik = mysql_query("SELECT newsid, tytul, tresc, autor, data, SUBSTRING(tresc,0,10) FROM news ORDER BY newsid DESC LIMIT 3")
  3. or die('Błąd zapytania'.mysql_error().'');
  4.  
  5. if($wynik) {
  6. /* jeżeli wynik jest pozytywny, to wyświetlamy dane */
  7. while($r = mysql_fetch_assoc($wynik)) {
  8. echo "<table width=\"400\" align=\"center\" cellpadding=\"2\" border=1>";
  9. echo "<tr><td>".$r['tytul']."</td></tr>";
  10. echo "<tr><td>".$r['tresc']."</td></tr>";
  11. echo "<tr><td>".$r['autor']."</td></tr>";
  12. echo "<tr><td>".$r['data']."</td></tr>";
  13. echo "</table><br>";
  14. }
  15. }
  16. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #13





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




kurcze, ale powiedz czego ty nie rozumiesz w zdaniu: daj nazwe pola po substring() tak jak ja dalem w przykladzie? No czego tu nie rozumiesz??
  1. SELECT newsid, tytul, autor, DATA, SUBSTRING(tresc,0,10) tresc FROM news ORDER BY newsid DESC LIMIT 3

ja ci mowie jedno a ty i tak robisz po swojemu i jeszcze bezczelnie piszesz ze ci moj kod nie dziala....

ps: nie bierz za bardzo moich nerwow do siebie, ale musze troche odreagowac... smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bamboo
post
Post #14





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


niemówie tego bezczelnie, bo zauważ że ten kod niedziała blinksmiley.gif jak widzisz jest tam petla która tworzy tabelke i 4 komórki w każdej inne pole, w polu drugim niewyświetlane jest nic, a reszta działa OK...

ok, rozumiem cie... smile.gif

Ten post edytował bamboo 16.02.2008, 00:05:56
Go to the top of the page
+Quote Post
nospor
post
Post #15





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




to jest twoje zapytanie: SELECT newsid, tytul, tresc, autor, data, SUBSTRING(tresc,0,10) FROM news ORDER BY newsid DESC LIMIT 3
to jest moje: SELECT newsid, tytul, autor, data, SUBSTRING(tresc,0,10) tresc FROM news ORDER BY newsid DESC LIMIT 3
Wstawie ci nawet jedno pod drugim bys lepiej widzial:

SELECT newsid, tytul, tresc, autor, data, SUBSTRING(tresc,0,10) FROM news ORDER BY newsid DESC LIMIT 3
SELECT newsid, tytul, autor, data, SUBSTRING(tresc,0,10) tresc FROM news ORDER BY newsid DESC LIMIT 3

widzisz roznice? Skup sie czlowieku. Zastanow sie wkoncu nad kodem ktory dostajesz od bardziej doswiadczonego uzytkownika. Nie zmieniaj tego kodu, wklej jak ci podalem jesli nadal nie widzisz roznicy!

ps: jesli wkleiles dokladnie moj kod i nadal nic nie ma, znaczy ze twoje pole tresc w pierszych 10 znakach ma same spacje albo wogole to pole jest puste


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bamboo
post
Post #16





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


nieprzepisywałem, niepoprawiałem mojego - tylko skopiowałem twój (nawet dwa razy, dla pewności że nie uciołem żadnej literki) smile.gif i jaki wynik? jak wyżej, już napisałem, i niechce mi sie tego pisać trzeci raz blinksmiley.gif
Go to the top of the page
+Quote Post
nospor
post
Post #17





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




sluchaj, jak mozesz pisac ze wkleiles moj kod skoro podales taki:
SELECT newsid, tytul, tresc, autor, data, SUBSTRING(tresc,0,10) from ...
A ja ci wyraźnie pokazalem w poprzednim poscie ze ja ci podalem inny.
pozatym jesli jednak jakims cudem masz tam gdzies dokladnie moj kod (czego na razie ani razu nie pokazales) to w takim razie twoje pole tresc jest puste, a na pewno przez pierwsze 10 znakow.

ide spac bo sie zaraz pozabijamy winksmiley.jpg


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bamboo
post
Post #18





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


wkleiłem to co mi podałeś zaraz po tym jak podałem ci kod całości, czyli wkleiłem to:
  1. SELECT newsid, tytul, autor, DATA, SUBSTRING(tresc,0,10) tresc FROM news ORDER BY newsid DESC LIMIT 3

wszystkie wartości z kolumny TRESC mają conajmniej 10 znaków...

Ten post edytował bamboo 16.02.2008, 00:21:05
Go to the top of the page
+Quote Post
Synapsa
post
Post #19





Grupa: Zarejestrowani
Postów: 28
Pomógł: 3
Dołączył: 15.06.2007

Ostrzeżenie: (0%)
-----


Daj tak.
  1. SELECT newsid, tytul, autor, DATA, SUBSTRING(tresc,1,10) tresc FROM news ORDER BY newsid DESC LIMIT 3
Go to the top of the page
+Quote Post
bamboo
post
Post #20





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 14.02.2008
Skąd: Głowno

Ostrzeżenie: (0%)
-----


ok, działa, dzięki, pkt dla ciebie... doświadczony programista był uparty, no cóż, ale każdy się czasem myli i niemożna mieć za to do nikogo pretensji, nospor, również dziękuje za pomoc... a więc panowie forumowicze, funkcja wyświetlająca daną ilość znaków z danej wartości wygląda tak:
  1. SUBSTRING(pole,1,200) pole

przed funkcją musi sie znajdować reszta pól które chcemy wywołać...
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 20:22