Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]problelm zmiennej
Forum PHP.pl > Forum > Przedszkole
Kamils2
witajcie
mam swoj autroski silnik i pisze skrypt ktory sam doda mi foty do galerii i problem jest taki ze mam galerie kategorie i w bazie tabli fotki mam id fotki id kategorii nazwe i opis i wszystko sie dodaje aby nie id kategorii i zmienna jest ok ale sie gubi w polecenieu mysql
nie wiem gdzie jest blad prosze o pomoc
zamieszczam wam caly skrypt
z gory dziekuje

  1. <?php
  2. include("../core/sql.php");
  3. include("../core/meta.php");
  4. include("../themes/org/code.php");;
  5. top();
  6. table("Administracja");
  7. if($_SESSION['admin'])
  8. {
  9.  $rights = $_SESSION['admin'];
  10. if($rights['site'] > 0)
  11. {
  12.  #nawigacja
  13.  echo'
  14.  <a href="Admin-index">Administracja</a> ->
  15.  <a href="Admin-index">Zarządzanie działami</a> ->
  16.  <a href="Admin-index">Galeria</a> ->
  17.  <a href="Admin-index">Przenoszenie fotek</a>
  18.  <hr class="sel">
  19.  ';
  20.  #nawigacja end
  21. echo'<table align="center">';
  22. $d = dir('../gallery/');
  23. while ($entry = $d->read()) 
  24. {
  25.  if($entry == "." or $entry == "..")
  26.  {
  27.  }
  28.  else
  29.  {
  30. echo'<tr><td><B>';
  31. echo $entry;
  32. echo'</B></td><td>';
  33. $sql=mysql_query("SELECT * FROM galeria WHERE nazwa = '$entry'");
  34. while($info=mysql_fetch_array($sql))
  35. {
  36.  $catid = $info['id'];
  37. }
  38. $s = dir('../gallery/'.$entry);
  39. $data=date('d.m.Y, H:i');
  40. $dir = $entry;
  41. $opis = "Brak opisu";
  42. mysql_query("INSERT INTO galeria(nazwa, data, katalog, opis)VALUES('$dir', '$data', '$dir', '$opis')");
  43. while ($foty = $s->read()) 
  44. {
  45.  if($foty == "." or $foty == ".." or $foty == "Thumbs.db" or $foty == "album.txt"){}
  46.  else {
  47.  echo $foty."<br>\n";
  48.  $urlb = '/gallery/'.$entry.'/' .$foty.'';
  49.  echo'<b>'.$catid.'</b>';
  50.  $to = $catid;
  51.  mysql_query("INSERT INTO foto(kategoria, url)VALUES('$to', '$urlb')");
  52. }
  53. }
  54. $s->close();
  55. echo'</td></tr><tr><td colspan="2"><hr></td></tr>';
  56.  }
  57. }
  58. $d->close();
  59.  echo'</table>';
  60.  }#rights
  61. else
  62. {
  63.  echo'<center><b>Błąd: <font color="maroon">Brak uprawnień</font></b></center>';
  64. }
  65.  
  66. }#admin
  67. else{
  68. <center><b>Zaloguj się, aby uzyskac dostęp do tej cześci strony</b></center>
  69. ';
  70. }
  71. close();
  72. bottom();
  73.  
  74.  
  75.  
  76.  
  77. ?>
piotrooo89
być może $entry jest w pętli i nie jest widziana na zewnątrz... z tych nawiasów naprawdę ciężko cokolwiek wyczytać.
nospor
@kamil ty uzywaj przecinkow, kropek, koncz zdania, pisz bez literowek bo normalnie opis twojego problemu czytalem chyba z 5 razy i nadal nie jestem pewien oco ci chodzi :/
Chcesz by ci pomoc to sie wysil troche i ulatw nam to!

chodzi ci o $catId? A echo $catId wyswietla ci je dobrze?
Mlodycompany
1. Zamiast tego
  1. <?php
  2. mysql_query("INSERT INTO galeria(nazwa, data, katalog, opis)VALUES('$dir', '$data', '$dir', '$opis')");
  3. ?>

spróbuj
  1. <?php
  2. $dodaj=mysql_query("INSERT INTO `galeria`(`nazwa`, `data`, `katalog`, `opis`)VALUES('".$dir."', '".$data."', '".$dir."', ''.$opis.")");
  3. ?>

zmien na tak samo w drugim insercie i powinno działać.
2. w lini 48 w zmiennej $urlb jest spacja ($urlb = '/gallery/'.$entry.'/' .$foty.'';). poszukaj i ja usun.
3. linia 22 masz okreslenie katalogu. byc moze sie myle ale chyba jednak nie. cos takiego jak ../gallery/ wraca z katalogu do poprzedniego i szuka w nim folderu gallery czyli np. strone masz w c:/usr/www czyli ../gallery/ wraca do c:/usr/ i w nim szuka folderu gallery. Moze specjalnie to zrobiles ale to zauwazylem i napisalem

Jak na mój gust to juz wszystko
-Kamils2-
Tak chodzi mi o $catid.
Jak daje ją w echo nad poleceniem MySQL to się wyświetla. Jednak skrypt jej nie przenosi.
Przepraszam za te przecinki itd ale to jest moja praca na zaliczenie i musze ją jutro oddać a jeszcze mam trochę pracy.
Nie wiecie może ja to ominąć, ponieważ ta zmienna musi być przypisywana do każdej fotki.
Ta zmienna musi być pętli, ponieważ musi się zmieniać w zależności od danej kategorii.
nospor
Cytat
Jednak skrypt jej nie przenosi.
Co to znaczy "nie przenosi"? Dodaje sie rekord w bazie z pustą kategorią, czy nie dodaje się wogole rekord?
Jesli sie wogole nie dodaje to daj:
  1. <?php
  2. mysql_query("INSERT INTO foto(kategoria, url)VALUES('$to', '$urlb')") or die(mysql_error());
  3. ?>
i zobaczysz jaki masz blad.

Cytat
Przepraszam za te przecinki itd ale to jest moja praca na zaliczenie i musze ją jutro oddać a jeszcze mam trochę pracy.
Tym bardziej powinienes opisac dokladnie problem by ludzie zrozumieli oco ci chodzi. Padly tu dwa posty innych osob zupelnie nie na temat bo nie zakumali oco ci biega.
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.