Dodanie parametru do wierszy tablicy

Wszystko o językach skryptowych takich jak PHP i Perl, serwerach WWW, CGI, bazach danych i języku SQL.
Piotrek50501
Posty: 11
Rejestracja: 26 mar 2015, 18:20:28
Płeć: Niewybrana
User Agent: Chrome Windows

Dodanie parametru do wierszy tablicy

Post autor: Piotrek50501 »

Witam
Jak wyświetlić tą tabelę w inny sposób odnosząc się do parametru i tak aby robiąc jakąś inną funkcję i odnosząc się do elementu np. i=5 wyświetlił mi się 5 wiersz tej tabeli mysql


[php]<table border="1">
</thead>
<tr>
<th>ID</th>
<th>Nazwa usługi</th>
<th>Cena za metr</th>
</tr>
</thead>
<tbody>

<?php
while( $row = mysql_fetch_array($wynik))
{
$i=$row['ID'];

print '<tr><td>'.$row['ID'].'</td>';
print '<td>'.$row['Nazwa_uslugi'].'</td>';
print '<td>'.$row['Cena_za_metr'].'</td>';

print "<td><a href=\"".$_SERVER['PHP_SELF']."?kup=$i\">Kup produkt</a></td></tr>";

}
[/php]

Problem polega na tym że masz kod wyświetlający koszyk i on wypisuje dane z tablicy po identyfikacji parametru i a nie wiem jak uwzględnić to w tej funkcji
Z góry dziękuje za pomoc
po22
Posty: 404
Rejestracja: 02 sty 2015, 14:57:43
Płeć: Niewybrana
User Agent: Firefox Linux 1024x768

Re: Dodanie parametru do wierszy tablicy

Post autor: po22 »

A jak wygląda deklaracja $wynik? Bo jak dobrze rozumiem potrzebujesz zmodyfikować zapytanie sql żeby wyświetlić konkretny wpis.
Czy wiesz, że:
  • W Panelu CBA w sekcji "wsparcie" jest dedykowany system ticketów (obsługi technicznej)
  • Odpowiadamy na Forum oraz na adres mailowy obsluga(malpa)cba.pl
  • Jesteśmy również na Facebooku! Znajdź nas na facebook.com/hostingcba | cba.pl
W czym jeszcze możemy pomóc?
Piotrek50501
Posty: 11
Rejestracja: 26 mar 2015, 18:20:28
Płeć: Niewybrana
User Agent: Chrome Windows 1366x768

Re: Dodanie parametru do wierszy tablicy

Post autor: Piotrek50501 »

<?php //definicja tablic z towarami oraz cenami



$q = mysql_connect('localhost','root','haslo') or
die('Padl serwer');
$q = mysql_select_db('stronaphp') or die('Padla baza');


$wynik = mysql_query("SELECT ID, Nazwa_uslugi, Cena_za_metr FROM cennik_uslug")
or die('Błąd zapytania');
?>

---- EDIT ----

Potrzebuje zmodyfikować aby do każdego wiersza był dopisany parametr i=1 i=2 i=3 itd tak aby można było z tego skorzystać w bloku z koszykiem
po22
Posty: 404
Rejestracja: 02 sty 2015, 14:57:43
Płeć: Niewybrana
User Agent: Firefox Linux 1024x768

Re: Dodanie parametru do wierszy tablicy

Post autor: po22 »

Przykładowo :

Kod: Zaznacz cały

if (isset($_GET['i'])) {
    $wynik = mysql_query("SELECT ID, Nazwa_uslugi, Cena_za_metr FROM cennik_uslug WHERE ID = ".$_GET['i']) or die('Błąd zapytania'); 
} else {
    $wynik = mysql_query("SELECT ID, Nazwa_uslugi, Cena_za_metr FROM cennik_uslug") or die('Błąd zapytania'); 
}
 
Czy wiesz, że:
  • W Panelu CBA w sekcji "wsparcie" jest dedykowany system ticketów (obsługi technicznej)
  • Odpowiadamy na Forum oraz na adres mailowy obsluga(malpa)cba.pl
  • Jesteśmy również na Facebooku! Znajdź nas na facebook.com/hostingcba | cba.pl
W czym jeszcze możemy pomóc?
Piotrek50501
Posty: 11
Rejestracja: 26 mar 2015, 18:20:28
Płeć: Niewybrana
User Agent: Chrome Windows

Re: Dodanie parametru do wierszy tablicy

Post autor: Piotrek50501 »

po22 pisze:Przykładowo :

Kod: Zaznacz cały

if (isset($_GET['i'])) {
    $wynik = mysql_query("SELECT ID, Nazwa_uslugi, Cena_za_metr FROM cennik_uslug WHERE ID = ".$_GET['i']) or die('Błąd zapytania'); 
} else {
    $wynik = mysql_query("SELECT ID, Nazwa_uslugi, Cena_za_metr FROM cennik_uslug") or die('Błąd zapytania'); 
}
&nbsp; 
Nie wiem czemu ale nie wyświetla mi całej tabeli z bazy mysql, nic nie wyświetla

---- EDIT ----

To jest właśnie część tabeli wyświetlanej i z Niej dopiero dodawane są do koszyka po parametrze i

---- EDIT ----

towary.php

Kod: Zaznacz cały

<?php
session_start();
if(!isset($_SESSION['koszyk']))
{
$_SESSION['koszyk']=array();
}
if (isset($_GET['kup']))
{
// jezeli dodajemy jaki¶ produkt do koszyka
  $_SESSION['koszyk'][] = $_GET['kup'];
// przekierowanie z uwzględnieniem nie działaj±cych ciasteczek
header('location: '.$_SERVER['PHP_SELF']. '?' .SID);
exit();
}
?>

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Firma budowlana Bill-Build</title>
 <meta http-equiv="content-type" content="text/html; charset=iso-8859-2" /> 
    </head>
  <body>
    
<b>Twoj koszyk zawiera: 
<?php print count($_SESSION['koszyk']); ?> produktow.</b>
<p><a href="koszyk.php">Zobacz koszyk</a></p>

<?php //definicja tablic z towarami oraz cenami
$towary = array(
'FILM DVD',
'Poradnik PHP',
'Zestaw płyt winilowych',
'Uzywane gumki');
$ceny = array(30.00, 79.99, 300.00, 2.00);
?>
<table border="1">
 <thead>
  <tr>
      <th>Opis towaru</th>
        <th>cena</th>
    </tr>
 </thead>
<tbody>

<?php //wyswietlamy towary z tablicy
for ($i = 0; $i < count($towary); $i++)
{
        print '<tr><td>' . $towary[$i] . '</td>';
        print '<td>' . number_format($ceny[$i],2) . ' zlotych</td>';
        print "<td><a href=\"".$_SERVER['PHP_SELF']."?kup=$i\">Kup produkt</a></td></tr>";
}
?>
 </tbody>
</table>
</body>
</html>

koszyk.php

Kod: Zaznacz cały

<?php
session_start();
if (!isset($_SESSION['koszyk'])) {
  $_SESSION['koszyk'] = array();
}

if (isset($_GET['reset']))  //chcemy wyczy¶cić koszyk
{
      unset($_SESSION['koszyk']);
            header('location: '. $_SERVER['PHP_SELF']. '?'. SID);
            exit();
}
?>

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Firma budowlana Bill-Build</title>
  </head>
  <body>
<h1>Twoj koszyk z zakupami</h1>

<?php // definicja tablic z towarami oraz cenami
  $towary = array(
'FILM DVD',
'Poradnik PHP',
'Zestaw płyt winilowych',
'Uzywane gumki');
$ceny = array(30.00, 79.99, 300.00, 2.00);
?>
<table border="1">
 <thead>
  <tr>
      <th>Opis towaru</th>
        <th>cena</th>
    </tr>
 </thead>
<tbody>

<?php
$suma = 0;
for ($i=0;$i < count($_SESSION['koszyk']); $i++)
{
        echo '<tr>';
        echo '<td>'.$towary[$_SESSION['koszyk'][$i]].'</td>';
        echo '<td align="right">';
        echo number_format ($ceny[$_SESSION['koszyk'][$i]],2);
        echo ' zlotych</td></tr>';
        $suma = $suma + $ceny[$_SESSION['koszyk'][$i]];
}
?>

</tbody>
 <tfoot>
  <tr>
      <th align="right">Naleznosc: </th><br>
        <th align="right"><?php echo number_format($suma,2); ?> zlotych.</th>
    </tr>
 </tfoot>
</table>

<p><a href="towary.php">Kupuj dalej</a> lub też: <a href="<?php echo $_SERVER['PHP_SELF']; ?>?reset=1">Wyczysc swoj koszyk</a></p>
</body>
</html>
na podstawie tych kodów robiłem, to działa tylko czyta z tablicy a ja chce zrobić koszyk żeby czytał z bazy mysql
po22
Posty: 404
Rejestracja: 02 sty 2015, 14:57:43
Płeć: Niewybrana
User Agent: Firefox Linux 1143x858

Re: Dodanie parametru do wierszy tablicy

Post autor: po22 »

Nie wiem czemu ale nie wyświetla mi całej tabeli z bazy mysql, nic nie wyświetla
Jeżeli nie ma w url i=cos powinno wyswietlic normalnie. Gdyby był błąd w pierwszy zapytaniu nawet to powinno go zwrócić. Wcześniej cokolwiek się wyświetlało a teraz nic?
Czy wiesz, że:
  • W Panelu CBA w sekcji "wsparcie" jest dedykowany system ticketów (obsługi technicznej)
  • Odpowiadamy na Forum oraz na adres mailowy obsluga(malpa)cba.pl
  • Jesteśmy również na Facebooku! Znajdź nas na facebook.com/hostingcba | cba.pl
W czym jeszcze możemy pomóc?
Piotrek50501
Posty: 11
Rejestracja: 26 mar 2015, 18:20:28
Płeć: Niewybrana
User Agent: Chrome Windows 1366x768

Re: Dodanie parametru do wierszy tablicy

Post autor: Piotrek50501 »

<?php // definicja tablic z towarami oraz cenami
$towary = array(
'FILM DVD',
'Poradnik PHP',
'Zestaw płyt winilowych',
'Uzywane gumki');
$ceny = array(30.00, 79.99, 300.00, 2.00);
?>

jeżeli odwołuję się do tablicy (jak wyżej) do działa zarówno strona z towarami jak i koszykami. Nie wiem jak zrobić żeby działało z bazą danych. Istnieje jakiś sposób żeby zastosować array() i wyświetlic w ten sposób dane?
po22
Posty: 404
Rejestracja: 02 sty 2015, 14:57:43
Płeć: Niewybrana
User Agent: Firefox Linux 1143x858

Re: Dodanie parametru do wierszy tablicy

Post autor: po22 »

Jak wygląda tabela w mysql?
Czy wiesz, że:
  • W Panelu CBA w sekcji "wsparcie" jest dedykowany system ticketów (obsługi technicznej)
  • Odpowiadamy na Forum oraz na adres mailowy obsluga(malpa)cba.pl
  • Jesteśmy również na Facebooku! Znajdź nas na facebook.com/hostingcba | cba.pl
W czym jeszcze możemy pomóc?
Piotrek50501
Posty: 11
Rejestracja: 26 mar 2015, 18:20:28
Płeć: Niewybrana
User Agent: Chrome Windows 1366x768

Re: Dodanie parametru do wierszy tablicy

Post autor: Piotrek50501 »

z tabelą myślę że jest wszystko ok tylko z tym dodawaniem indeksy do wierszy
po22
Posty: 404
Rejestracja: 02 sty 2015, 14:57:43
Płeć: Niewybrana
User Agent: Firefox Linux 1143x858

Re: Dodanie parametru do wierszy tablicy

Post autor: po22 »

Piotrek50501 z dodawaniem czy wyświetlaniem?
Czy wiesz, że:
  • W Panelu CBA w sekcji "wsparcie" jest dedykowany system ticketów (obsługi technicznej)
  • Odpowiadamy na Forum oraz na adres mailowy obsluga(malpa)cba.pl
  • Jesteśmy również na Facebooku! Znajdź nas na facebook.com/hostingcba | cba.pl
W czym jeszcze możemy pomóc?
Piotrek50501
Posty: 11
Rejestracja: 26 mar 2015, 18:20:28
Płeć: Niewybrana
User Agent: Chrome Windows 1366x768

Re: Dodanie parametru do wierszy tablicy

Post autor: Piotrek50501 »

no dopisywaniem indeksów do wierszy tabeli podczas wyświetlania, chodzi o to dokładnie:

Nazwa_uslugi[0]Cena_za_metr[0]
Nazwa_uslugi[1]Cena_za_metr[1]
Nazwa_uslugi[2]Cena_za_metr[2]
Nazwa_uslugi[3]Cena_za_metr[3]
.....

---- EDIT ----

Cały czas siedze w necie, natknąłem sie na taki zapis. Co on oznacza?
$i = (int)$_GET['id']; //To przekażesz w url'u
ODPOWIEDZ