Kolejny problem to pytanie do mysqla, dodajac plyte do bazy najpierw sprawdzam w tabeli wykonawcy czy jest juz wykonawca tej plyty. jesli jest pobieram wyk_ID aby wstawic do tabeli plyty. Jesli nie ma to go wstawiam do tabeli wykonawcy i pobieram wyk_ID aby wstawic do tabeli plyty. Z wytwornia plytowa robie to samo. oto kod:
[php:1:da8b1c02ea]<?php
//Laczenie z MySQL
$db = mysql_pconnect ('127.0.0.1', 'php_plyty', 'plyty_password');
if (!$db)
{
echo "blad polaczenia";
}
//Wybieranie konkretnej bazy danych
mysql_select_db('plyty_audio');
//Sprawdzanie Autora
$zapytanie = "select * from wykonawcy";
$wynik = mysql_query ($zapytanie);
$znacznik = '0';
$ile = mysql_num_rows ($wynik);
for ($i = 0; $i < $ile; $i++)
{
$element = mysql_fetch_array($wynik);
if ($element['nazwa'] == $nazwa)
{
//Jesli jest, pobieranie wyk_ID
$wyk_ID = stripslashes($element['wyk_ID']);
$znacznik = '1';
}//end if
}//end for
if ($znacznik != '1')
{
//Jesli nie ma, wpisywanie do bazy i zwracanie wyk_ID
$zapytanie = "insert into wykonawcy set (nazwa='".$nazwa."')";
mysql_query ($zapytanie);
$zapytanie = "select * from wykonawcy where nazwa like '".$nazwa."'";
$odp = mysql_query ($zapytanie);
$ile = mysql_num_rows ($wynik);
$elem = mysql_fetch_row($odp);
$wyk_ID = $elem['wyk_ID'];
}//end if
//Sprawdzanie Wytworni
$zapytanie = "select * from wydawca";
$wynik = mysql_query ($zapytanie);
$znacznik = '0';
$ile = mysql_num_rows ($wynik);
for ($i = 0; $i < $ile; $i++)
{
$element = mysql_fetch_array($wynik);
if ($element['logo'] == $logo)
{
//Jesli jest, pobieranie wyk_ID
$wydawca_ID = $element['wydawca_ID'];
$znacznik = '1';
}//end if
}//end while
if ($znacznik != '1')
{
//Jesli nie ma, wpisywanie do bazy i zwracanie wyk_ID
$zapytanie = "insert into wydawcy set (nazwa='".$logo."')";
mysql_query ($zapytanie);
$zapytanie = "select * from wykonawcy where nazwa='".$logo."'";
$odp = mysql_query ($zapytanie);
$elem = mysql_fetch_array($odp);
$wydawca_ID = $elem['wydawca_ID'];
}//end if
//Wpisywanie nowej płyty
$zapytanie = ("insert into plyty set (
wyk_ID='".$wyk_ID."',
tytul='".$tytul."',
rodzaj='".$rodzaj."',
rok='".$rok."',
ilosc_cd='".$ilosc_cd."',
wydawca_ID='".$wydawca_ID."')"
);
mysql_query ($zapytanie);
?>[/php:1:da8b1c02ea]
Kod mi sie wywala:
[php:1:da8b1c02ea]<?php
$odp = mysql_query ($zapytanie);
$ile = mysql_num_rows ($wynik);
$elem = mysql_fetch_row($odp);
$wyk_ID = $elem['wyk_ID'];//w tym miejscu
?>[/php:1:da8b1c02ea]
i zwraca warning ze nie poprawny typ dla mysql_fetch_row. Jak stosuje mysql_fetch_array wywala tak samo.
Co robić? Gdzie błąd? Siedzę nad tym od dwoch dni. mam ksiazke php i MySQL 2nd edition wydawnictwa Heloin, nie pomaga.
Z góry pragnę podziekowac za wszelkie wsparcie.
?>[/php]