Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Spację zamienia na +
gsmphone
post
Post #1





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 20.10.2006

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


Witam,

Stworzyłem skrypt który pobiera pliki. Wszystko jest dobrze jeżeli nazwa pliku zawiera tylko jedno słowo. Sytuacja się komplikuję gdy plik ma dwu członową nazwę np "owoce morza" Zamiast spacji dodaje się automatycznie + (owoce+morza). Więc pomyślałem że zrobię skrypt który zamienia ten + na spację:

  1. <?php
  2. str_replace("+", " ", $text);
  3. ?>


ale to nie zadziałało. Pomyślałem że dam w tym kodzie dwie spację to może wtedy coś się stanie ale wtedy to tylko dodało dwa plusy.
Ma ktoś może jakiś pomysł?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Zamieniaj spacje na %20
Go to the top of the page
+Quote Post
gsmphone
post
Post #3





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 20.10.2006

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


To też nie zadziałało.. zamieniło tylko na: owoce%2520morza.
Go to the top of the page
+Quote Post
Kojak
post
Post #4





Grupa: Zarejestrowani
Postów: 70
Pomógł: 5
Dołączył: 11.09.2007
Skąd: Kielce

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


Tak działa:

  1. <?php
  2. $text = 'owoce+morza';
  3. $text = str_replace("+", " ", $text);
  4. echo $text; // Wyświetla 'owoce morza'
  5. ?>


Ten post edytował Kojak 21.07.2009, 08:30:36
Go to the top of the page
+Quote Post
gsmphone
post
Post #5





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 20.10.2006

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


No właśnie taki kod mam i nie działa. Oczywiście zadziała to gdy się nie pobiera tylko wykonuję ten skrypt. Ale gdy już dam do pobierania to cały czas wtrąca ten +
Go to the top of the page
+Quote Post
Spawnm
post
Post #6





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




zobacz urldecode" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
gsmphone
post
Post #7





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 20.10.2006

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


Tez niestety dalej są +'y
Go to the top of the page
+Quote Post
Kojak
post
Post #8





Grupa: Zarejestrowani
Postów: 70
Pomógł: 5
Dołączył: 11.09.2007
Skąd: Kielce

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


Pokaż ten skrypt który pobiera nazwy plików.
Go to the top of the page
+Quote Post
Marcuez
post
Post #9





Grupa: Zarejestrowani
Postów: 98
Pomógł: 1
Dołączył: 7.07.2009
Skąd: Poligon Osielsko

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


W większości przypadków wyrazy są łączone lub dodawana jest '_'. Ona jagby 'imituje' spacje.
  1. <?php
  2. str_replace("+", "_", $text);
  3. ?>

owoce_morza
Go to the top of the page
+Quote Post
gsmphone
post
Post #10





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 20.10.2006

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


To jest takie coś:

  1. <?php
  2. $wykonaj = mysql_query ($zapytanie);
  3.  
  4.  
  5. $file = "owoce/morze/$_GET['owoc'].csv";
  6. $fp = fopen("$file", "w+");
  7.  
  8.  
  9.  
  10. while($wiersz=mysql_fetch_row ($wykonaj))
  11. {
  12. ...............
  13.  
  14. }
  15.  
  16.  
  17. header("Content-Type: text/csv");
  18. header('Content-Disposition: attachment; filename="'.urlencode($_GET['owoc']).'.csv"');
  19.  
  20. echo file_get_contents("owoce/morze/$_GET['owoc'].csv");
  21. ?>




Zrobiłem:-)

Po prostu nie potrzebne jest to .urlencode($_GET['owoc']).

Ten post edytował gsmphone 21.07.2009, 10:30:40
Go to the top of the page
+Quote Post
erix
post
Post #11





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Zamiast spacji dodaje się automatycznie + (owoce+morza). Więc pomyślałem że zrobię skrypt który zamienia ten + na spację:

Jest to element specyfikacji i nazwa MUSI zostać zakodowana.

Prędzej tu trzeba zmienić:
  1. <?php
  2. header('Content-Disposition: attachment; filename="'.urldecode($_GET['owoc']).'.csv"')
  3. ?>
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 13:01