Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Oracle][PHP] Złączenie znaków
Forum PHP.pl > Forum > Przedszkole
kamulator
Witam, mam mały problem a mianowicie nie mam pojęcia jak moge złączyć tablice aby powstał odpowiedni ciąg znaków. Mianowicie ma on wyglądać tak:

'kom1', 'kom2', 'kom3' itp..

w tym momencie wyglada tak

kom1,kom2,kom3 brakuje w nim ' ' zapytanie mam dodawać rekord do bazy danych w tym momenice nie doda gdy są wartości varchar, dodaje tylko number itp.. ze względu na brak dowch pieknych znaczków ' '.

$s = oci_parse($conn, "insert into $cat values (SEQ_$cat.NextVal,". implode (',', $array3) .")"); - w tym miejscu pojawia się problem

Fragment funkcji wyglada tak:

  1. function dodaj_do_tabeli($tabela){
  2. include('connect.php');
  3.  
  4. $s = oci_parse($conn,'select * from ' . $tabela. '');
  5. oci_execute($s);
  6.  
  7. $licznik = oci_num_fields($s);
  8.  
  9.  
  10. for ($i = 2; $i <= $ncols; $i++) {
  11. $column_name = oci_field_name($s, $i);
  12. $array3[$i]=$_POST[$column_name];
  13.  
  14. }
  15.  
  16.  
  17. $s = oci_parse($conn, "insert into $cat values (SEQ_$cat.NextVal,". implode (',', $array3) .")");
  18.  
  19. $result = oci_execute($s);
  20.  
  21. if ($result)
  22. {
  23. echo "<br>DODANO POZYCJE</p>";
  24. oci_commit($conn);
  25. }
  26. else
  27. {
  28. echo "<p>BLAD - nie dodano pozycji</p>";
  29. var_dump(oci_error($s));
  30. }
  31. ...



Proszę o pomoc
CuteOne
zamiast wrzucać implode do zapytania zrób to poza nim:

  1. $string = '';
  2. foreach($array as $list) {
  3.  
  4. $string .= "'$list',";
  5. }
  6.  
  7. $string = substr($string, 0, -1);
  8. $s = oci_parse($conn, "insert into $cat values (SEQ_$cat.NextVal,". $string .")");
kamulator
Witam, teraz mam kolejny problem a mianowicie potrzebuje stworzyc zapytanie update z dwóch tablic, które zawierają elementy do wpisania a druga tablica zawiera ininfromacje o komorkach tabeli.


  1. function edytuj_pozycje2($tabela,$id){
  2. include('connect.php');
  3.  
  4. $s = oci_parse($conn,'select * from ' . $tabela. '');
  5. oci_execute($s);
  6. $ncols = oci_num_fields($s);
  7. $column_name1 = oci_field_name($s, 1);
  8.  
  9. for ($i = 1; $i <= $ncols; $i++) {
  10. $column_name = oci_field_name($s, $i);
  11. $array4[$i]=$column_name;
  12. $array3[$i]=$_POST[$column_name];
  13. }
  14.  
  15.  
  16.  
  17. //$s = oci_parse($conn, "UPDATE $tabela values ()"); - tutaj problem, gdyż nie mam pojęcia jak to zrobić. Tablica array4 zawiera informacje o nazwach pol czyli np imie nazwisko natomiast array3 zawiera dane do edytowania czyli juz konkretne imie i nazwisko do wpisania, wiec trzeba stworzyc wczesniej lancuch do zapytania, ale rowniez nie wiem jak to zrobic, a na końcu musi byc warunek WHERE $column_name1=$id; Prosze o pomoc
  18.  
  19. $result = oci_execute($s);
  20.  
  21. if ($result){
  22. echo "<br><p>Edytowano pozycje</p><br>";
  23.  
  24. oci_commit($conn);
  25. }
  26. else{
  27. echo "<p>BLAD - nie edytowano pozycji</p>";
  28. var_dump(oci_error($s));
  29. }
  30.  
  31. oci_close($conn);
  32.  
  33. .........
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.