Strona Główna     FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy


Poprzedni temat :: Następny temat
[php]Co tu nie gra?
Autor Wiadomość
eclipse 


Skąd: bierzwnik
Wysłany: 2009-03-29, 19:03   [php]Co tu nie gra?

Opis skryptu: To jest kod do edytowania ogłoszeń. Mam w tabeli np 5 ogłoszeń i zaczytuje jekieś ogłoszenie do formularza i chce aby modyfikacje zostały nadpisane metodą UPDATE SET w tabeli bazy SQL
dokładniej mówiąc UPDATE ogloszenia SET (pola w wierszu) WHERE ogloszenia_id = (np.5)
czyli wszystkie pola w wierszu z ogłoszeniem o identyfikatorze nr 5
Co tu jest źle, bo coś nie działa

Kod:
<?php include('title.php');

mysql_connect('localhost', 'bip', '') or die ("Nie można nawiązać połączenia z bazą");
mysql_select_db("bip") or die ("Nie można wybrać bazy danych");

$theme = trim($_GET['theme']);
$a = trim($_GET['edit']);



if ($theme='advert') {   //------------------------------------------------------------------- Ogłoszenia -------------------


$q = "SELECT * FROM ogloszenia WHERE ogloszenie_ID = '$a'";
$result = mysql_query($q, mysql_connect('localhost', 'bip', ''));
$row = mysql_fetch_array($result);
$rezultat = mysql_query('select * from ogloszenia');

$tresc1 = nl2br($row['ogloszenie_short']);
$tresc2 = nl2br($row['ogloszenie_long']);

?>

<br><br>Edytuj ogloszenie v.2.2
<?php
extract($_REQUEST);
if (isset($sygnatura2) && isset($tytul2)) {
mysql_connect('localhost', 'bip', '');
mysql_select_db("bip");
mysql_query('UPDATE ogloszenia SET (sygnatura,
        tytul, kategoria,
        ogloszenie_short,
        ogloszenie_long,
        data_dodania,
        data_modyfikacji,
        data_dokiedy,
        licznik_ogloszenia) WHERE ogloszenie_ID = $a'.
           "values('$sygnatura2', '$tytul2', '$kategoria2', '$ogloszenie_short2', '$ogloszenie_long2', '$data_dodania2', '$data_modyfikacji2', '$data_dokiedy2', '')");
$status = "Tekst ogłoszenia <i>$tytul</i> zostal zmodyfikowany.<br>";}
?>

<body>
<br/><br/>
<strong><?php

if (isset($sygnatura2) && isset($tytul2)) {
echo $status; }
?></strong>

<form action="<?php echo $_SERVER['PHP_SELF'] ?>">
<table width=100%><tr><td width=50% valign='top'>
<strong>Sygnatura ogłoszenia:</strong><br/><input type="text" name="sygnatura2" size="50" value='<?php echo "".$row['sygnatura'].""; ?>' ><br/><br/>
<strong>Tytuł ogłoszenia:</strong><br/><input type="text" name="tytul2" size="100" value='<?php echo "".$row['tytul'].""; ?>'><br/><br/>
<strong>Kategoria ogłoszenia:</strong><br/><select name="kategoria" size="1" value='<?php echo "".$row['kategoria'].""; ?>' ><option selected>Aktualne<option>Nieaktualne</select><br><br>
<strong>Skrócona treść ogłoszenia:</strong><br/><textarea name="ogloszenie_short2" cols=100 rows=20"><?php echo "$tresc1"; ?></textarea><br/><br/>
<strong>Pełna treść ogłoszenia</strong><br/><textarea name="ogloszenie_long2" cols=100 rows=20"><?php echo "$tresc2"; ?></textarea><br/><br/>
</td><td valign="top">
<strong>Data od kiedy:</strong><br/><input type="text" name="data_dodania2" size="25" value='<?php echo "".$row['data_dodania'].""; ?>' ><br/><br/>
<strong>Data modyfikacji:</strong><br/><input type="text" name="data_modyfikacji2" size="25" value='<?php echo date('d-m-Y'); ?>' ><br/><br/>
<strong>Data do kiedy: </strong><br/><input type="text" name="data_dokiedy2" size="25" value='<?php echo "".$row['data_dokiedy'].""; ?>' ><br/><br/>
<p><input type="submit" value="Zapisz modyfikacje"></p></td></tr></table>
</form>

<br><br>

<?php } include('footer.php'); ?>
_________________
www.samarytanin.org.pl

eclipse
 
   
Jožin z bažin 

Skąd: Vizovice
Wysłany: 2009-04-08, 10:52   

Nie umiesz składni SQL. Bez podstaw nic nie napiszesz.

Nie rób tego. Po prostu odczytuj dane za pomocą $_POST. Twój kod jest podatny na SQL Injection. Zastosuj MySQLi lub PDO i prepared statements. Nic trudnego.
Kod:
extract($_REQUEST);
_________________
"Chcieliście Irlandię, a macie czeski film."
 
   
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Możesz pisać nowe tematy
Możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
system walidacji dla gości opracował Petermechanic
Forum komputerowe
Strona wygenerowana w 0,07 sekundy. Zapytań do SQL: 9