Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: modyfikowanie rekordow w bazie mysql
Forum PHP.pl > Forum > Gotowe rozwiązania
mouk
no wiec tak skrypty wyglada tak

edytuj.php
[php:1:fca6053c3d]<?php

<html>
<head>
<title>modyfikowanie</title>
<LINK rel="stylesheet" href="../style.css" type="text/css">
</head>
<body>
<?
if (!isset($PHP_AUTH_USER)) {
header('WWW-Authenticate: Basic realm="administracja ksiegarni"');
header('HTTP/1.0 401 Unauthorized');
echo 'wymagana autoryzacja';
exit;
}
else if (isset($PHP_AUTH_USER)) {
if (($PHP_AUTH_USER != "admin") || ($PHP_AUTH_PW != "mouk")) {
header('WWW-Authenticate: Basic realm="administracja"');
header('HTTP/1.0 401 Unauthorized');
echo 'wymagana autoryzacja.';
exit;
}

else {


//tworze polaczenie
$connection = mysql_connect ("localhost") or die ("nie moge sie polaczyc");

//wybieram baze danych
mysql_select_db("ksiegarnia") or die ("nie moge wybrac bazy");

$sql = "select tytul from ksiazki order by tytul asc";
$sql_result = mysql_query($sql, $connection) or die ("nie mozna wykonac zapytania");
}
}
?>


<center> wybierz książkę do modyfikacji</center>

<form method = "post" action= "edytuj2.php"
<table cellspacing=5 cellpading=5>
<tr>
<td>tytul</td>
<td valign=top>
<select name="wybrany_rekord">




<?
while ($row = mysql_fetch_array($sql_result))
{
$tytul= $row["tytul"];
echo "
<option > $tytul</option>
";
}
echo"
</select>

<input type="submit" value="wybierz książkę, którą chcesz zmodyfikowac:">
</table>
</form>
";
?>



<center> wybierz ID ksiązki do modyfikacji</center>

<form method = "post" action= "edytuj3.php"
<table cellspacing=5 cellpading=5>
<tr>
<td>tytul</td>
<td valign=top>
<select name="edytuj">


<?
while ($row = mysql_fetch_array($sql_result))
{

$IDksiazki= $row["IDksiazki"];
echo "
<option > $IDksiazki</option>
";
}
echo"
</select>

<input type="submit" value="wybierz ID książki, którą chcesz zmodyfikowac:">
</table>
</form>
";
?>



</body>
</html>




?>[/php:1:fca6053c3d]




edytuj2.php


[php:1:fca6053c3d]<?php

<html>
<head>
<title>modyfikowanie</title>
<LINK rel="stylesheet" href="../style.css" type="text/css">
</head>
<body>
<?
if (!isset($PHP_AUTH_USER)) {
header('WWW-Authenticate: Basic realm="administracja ksiegarni"');
header('HTTP/1.0 401 Unauthorized');
echo 'wymagana autoryzacja';
exit;
}
else if (isset($PHP_AUTH_USER)) {
if (($PHP_AUTH_USER != "admin") || ($PHP_AUTH_PW != "mouk")) {
header('WWW-Authenticate: Basic realm="administracja"');
header('HTTP/1.0 401 Unauthorized');
echo 'wymagana autoryzacja.';
exit;
}

else {




if (!$wybrany_rekord)
{
header ("Location: http://localhost/admin/edytuj.php");
exit;
}


//tworze polaczenie
$connection = mysql_connect ("localhost") or die ("nie moge sie polaczyc");

//wybieram baze danych
mysql_select_db("ksiegarnia") or die ("nie moge wybrac bazy");


$sql= "select * from ksiazki where tytul = "$wybrany_rekord"";



$sql_result= mysql_query($sql, $connection) or die ("nie mozna wykonac zapytania");

if (!$sql_result) {
echo"nie mozna pobrac rekordu";
}

else

{
$row = mysql_fetch_array($sql_result);
$IDksiazki = $row ["IDksiazki"];
$tytul = $row ["tytul"];
$autor = $row ["autor"];
$cena = $row ["cena"];


echo"


Wybrałes:
<form method= "post" action = "edytuj3.php">
<table cellpadding = 5 cellspacing = 5>
<tr>
<td> ID </td>
<td>
<input type = "text" name = "IDksiazki" value ="$IDksiazki" size = 40></td>
</tr>



<tr>
<td> tytul </td>
<td>
<input type = "text" name = "tytul" value ="$tytul" size = 40></td>
</tr>


<tr>
<td> autor </td>
<td>
<input type = "text" name = "autor" value ="$autor" size = 40></td>
</tr>



<tr>
<td> cena </td>
<td>
<input type = "text" name = "cena" value ="$cena" size = 40></td>
</tr>

<tr>
<td>
<input type= "submit" value="modyfikuj ksiazke">
</td>
</tr>

</table>
</form>
";
}
}
}
?>


</body>
</html>


?>[/php:1:fca6053c3d]


edytuj3.php

[php:1:fca6053c3d]<?php


<html>
<head>
<title>modyfikowanie</title>
<LINK rel="stylesheet" href="../style.css" type="text/css">
</head>
<body>
<?
if (!isset($PHP_AUTH_USER)) {
header('WWW-Authenticate: Basic realm="administracja ksiegarni"');
header('HTTP/1.0 401 Unauthorized');
echo 'wymagana autoryzacja';
exit;
}
else if (isset($PHP_AUTH_USER)) {
if (($PHP_AUTH_USER != "admin") || ($PHP_AUTH_PW != "mouk")) {
header('WWW-Authenticate: Basic realm="administracja"');
header('HTTP/1.0 401 Unauthorized');
echo 'wymagana autoryzacja.';
exit;

} else {






//tworze polaczenie
$connection = mysql_connect ("localhost") or die ("nie moge sie polaczyc");

//wybieram baze danych


$db=mysql_select_db("ksiegarnia", $connection) or die ("nie moge wybrac bazy");





$sql= " update ksiazki set IDksiazki = "$IDksiazki", tytul = "$tytul", autor = "$autor", cena = "$cena"";


$sql_result = mysql_query($sql, $connection) or die ("nie mozna wykonac zapytania");




if (!$sql_result) {
echo"nie mozna zmodyfikowac rekordu";


} else {


echo"


Wybrałes:
<form method= "post" action = "edytuj3.php">
<table cellpadding = 5 cellspacing = 5>
<tr>
<td> ID </td>
<td>
<input type = "text" name = "ID" value ="$IDksiazki" size = 40></td>
</tr>



<tr>
<td> tytul </td>
<td>
<input type = "text" name = "tytul" value ="$tytul" size = 40></td>
</tr>


<tr>
<td> autor </td>
<td>
<input type = "text" name = "autor" value ="$autor" size = 40></td>
</tr>



<tr>
<td> cena </td>
<td>
<input type = "text" name = "ID" value ="$cena" size = 40></td>
</tr>

<tr>
<td>
<input type= "submit" value="modyfikuj ksiazke">
</td>
</tr>

</table>
</form>
";
}
}
}
?>


</body>
</html>


?>[/php:1:fca6053c3d]



no i problem jest z plikiem edytuj3.php

a konkretniej chyba tu jest blad




[php:1:fca6053c3d]<?php


$sql= " update ksiazki set IDksiazki = "$IDksiazki", tytul = "$tytul", autor = "$autor", cena = "$cena"";


$sql_result = mysql_query($sql, $connection) or die ("nie mozna wykonac zapytania");


?>[/php:1:fca6053c3d]

, poniewaz zawsze mi wyskakuje komuniakak "nie mozna wykonac zapytania" naprawde nie mam zielonego pojecia co jest zle.

Towarzysze pomozecie ? smile.gif
Bakus
Twój kod:
[php:1:5a1ef26ab3]<?php
$sql= " update ksiazki set IDksiazki = "$IDksiazki", tytul = "$tytul", autor = "$autor", cena = "$cena"";
?>[/php:1:5a1ef26ab3]
Kod działający:
[php:1:5a1ef26ab3]<?php
$sql= "update ksiazki set IDksiazki = "$IDksiazki", tytul = "$tytul", autor = "$autor", cena = "$cena"";
?>[/php:1:5a1ef26ab3]
Przed "update" nie może być spacji!

P.S. Czytelniej (moim zdaniem) jest:
[php:1:5a1ef26ab3]<?php
$sql= 'update ksiazki set IDksiazki = "' . $IDksiazki . '", tytul = "' . $tytul . '", autor = "' . $autor . '", cena = "' . $cena . '"';
?>[/php:1:5a1ef26ab3]
lub tak:
[php:1:5a1ef26ab3]<?php
$sql= "update ksiazki set IDksiazki = '$IDksiazki', tytul = '$tytul', autor = '$autor', cena = '$cena'";
?>[/php:1:5a1ef26ab3]
Do wyboru, do koloru winksmiley.jpg

P.S. Stosuj tylko małe litery w nazwach zmiennych - unikniesz niespozianek z pustymi zmiennymi, gdy zapomnisz które byłu duże...
mouk
Niestetety nadal z kazda z tych wersji kodu dzieje sie dokladnie to samo tzn wyskakuje mi " nie mozna wykonac zapytania" sad.gif
mouk
Mecze sie z tym juz drugi dzien i naprawde już nie mam zielonego pojecia co moze byc nie tak. Wersja apache to 1.3.19 ,php 4.0.5 , mysql 3.23.37

podaje tak na wszelki wypadek.
kicaj
Masz wszedzie tylko:
Kod
mysql_connect("localhost");

A gdzie user i haslo?

Przyklad:
Kod
mysql_connect("localhost", "user", "password");

smile.gif
mouk
owszem login i haslo by sie przydalo, ale wszystko mi jak dotad dzialalo bez tego, tz otwieranie i pobieranie danych z bazy, usuwanie rekordow z bazy itd, wiec to nie to jest chyba przyczynąsad.gif
kicaj
Tak napewno zadziala:[php:1:048685e98f]<?php
mysql_connect("localhost", "user", "pass") or die ("nie moge sie polaczyc");
mysql_select_db("ksiegarnia") or die ("nie moge wybrac bazy");

$sql= "update ksiazki set IDksiazki = '$IDksiazki', tytul = '$tytul', autor = '$autor', cena = '$cena' WHERE gdzie?questionmark.gif"; //musisz podac ktory wiersz ma byc zmieniony!!!

$sql_result = mysql_query($sql) or die ("nie mozna wykonac zapytania");
?>[/php:1:048685e98f]
mouk
faktycznie WHERE zapomnialem

zrobilem tak:
[php:1:b0d597fd9c]<?php
$sql= "update ksiazki set IDksiazki = '$IDksiazki', tytul = '$tytul', autor =
'$autor', cena = '$cena' WHERE IDksiazki = '$IDksiazki'";
?>[/php:1:b0d597fd9c]

i prawie ze dziala, ale jzu modyfikuje:)
kicaj
[php:1:ec3ef84831]<?php
$sql= "update ksiazki set IDksiazki = '$IDksiazki', tytul = '$tytul', autor =
'$autor', cena = '$cena' WHERE IDksiazki = '$IDksiazki'";
?>[/php:1:ec3ef84831] chyba zbedne jest ...set IDksiazki = '$IDksiazki'... questionmark.gif Jezli id sie nie zmienia...
spenalzo
Cytat
chyba zbedne jest ...set IDksiazki = '$IDksiazki'... questionmark.gif Jezli id sie nie zmienia...

Sam jesteś zbędny...
Przyjrzyj się dokłądnie kodowi, który został napisany.
kicaj
jaki jest sens zmieniania identyfikatora wiadomosci??
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.