Update script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Naam Loos

Naam Loos

06/02/2009 20:30:00
Quote Anchor link
Hoi,

Ik moet dmv een database een rij gegevens wijzigen. Maar er zijn verschillende rijen en ik moet ze per stuk kunnen aanpassen.

Wie kan hiermee helpen, ik ben nu al een dag hiermee bezig om te zoeken naar scripts maar kan geen begin maken.
Ik hoop dat ik het een beetje goed uitgelegd heb...
 
PHP hulp

PHP hulp

21/11/2024 21:03:56
 
Timen kut

Timen kut

06/02/2009 20:30:00
Quote Anchor link
UPDATE tabelnaam SET kolomnaam="waarde" WHERE kolomID=$id
 
Naam Loos

Naam Loos

06/02/2009 20:39:00
Quote Anchor link
Al mijn database er ongeveer zo uitziet:

| id | artiest | nummer | prijs | img | lengte |

| 1 | gast | joww | € gra | http://en.nl | 00:00:00 |
| 2 | gast | joww | € gra | http://en.nl | 00:00:00 |
| 3 | gast | joww | € gra | http://en.nl | 00:00:00 |

hoe kan ik dan elke artiest apart updaten?
Gewijzigd op 01/01/1970 01:00:00 door Naam Loos
 
Kumkwat Trender

Kumkwat Trender

06/02/2009 20:42:00
Quote Anchor link
gewoon nog steeds hetzelfde gebruiken en onderscheiden met een komma

UPDATE tabelnaam SET kolomnaam="waarde",kolomnaam2="waarde2" WHERE kolomID=$id

trouwens ik snap je vraag niet echt :P
Gewijzigd op 01/01/1970 01:00:00 door Kumkwat Trender
 
Naam Loos

Naam Loos

06/02/2009 20:43:00
Quote Anchor link
Maar als ik dan een artiest toevoeg dan moet ik de query ook weer wijzigen of zie ik dat dan weer verkeerd?
 
Timen kut

Timen kut

06/02/2009 20:44:00
Quote Anchor link
elke artiest heeft zijn unieke ID..(1, 2 , 3).. dan krijg je dus WHERE id=1(of 2,3)
 
Naam Loos

Naam Loos

06/02/2009 20:45:00
Quote Anchor link
Ja dat betekent dus dat ik voor elke artiest een aparte query moet hebben, of niet?
 
Kumkwat Trender

Kumkwat Trender

06/02/2009 20:47:00
Quote Anchor link
natuurlijk niet...

door middel van variables enzo werken

(Timen je plaatje is vaag :P)
 
Timen kut

Timen kut

06/02/2009 20:59:00
Quote Anchor link
Ik hou van mn plaatje..

Anyway voorbeeld van een update van mij:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$query
= "UPDATE page_algemeen SET tekst='".addslashes($post['algemeenaanpas'])."' WHERE algemeenID=$id";
?>


Die $id = een $_GET die ik verstuur vanaf mijn beheer pagina

Aanpassen.php?edit=ID-uit-database-hier
 
Naam Loos

Naam Loos

06/02/2009 21:09:00
Quote Anchor link
Ik ben begonnen met het script.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
require_once 'database.php';

$sql = "
    UPDATE
        muziekdata
    SET
        artiest = mysql_real_escape_string($_POST['artiest']);
    WHERE
        artiest = '"
.$artiest."'
"
;

if(!$res = mysql_query($sql))
{

    trigger_error(mysql_error().'<br />In query: '.$sql);
}

elseif(mysql_affected_rows() == 0)
{

    echo 'Geen records gewijzigd. <br />Query: '.$sql;
}

else
{
    echo 'Update was succesvol!';
}

?>

Doe ik het zo goed?
 
Timen kut

Timen kut

06/02/2009 21:17:00
Quote Anchor link
wel effe je $_POST escapen..
''.$_POST['artiest']."'

Maar het is niet logisch om hetgene te verandert waar je ook naar verwijst.. pak de ID van de artiest ipv zn naam.
 
Naam Loos

Naam Loos

06/02/2009 21:19:00
Quote Anchor link
PHP Newbie schreef op 05.02.2009 10:47:
Je wilt geen zaken hebben die afhankelijk zijn van het ID. Een ID is slechts een uniek nummer om een rij aan te duiden.

Wanneer je een deel van je data kwijt raakt en je plaatst een backup terug kunnen de ID's best wel eens anders zijn. Dan zou je ook je php-code aan moeten passen omdat je daar het ID hard-coded in hebt staan. Niet helemaal de bedoeling lijkt me.

Pas de vergelijking daarom toe op de artiestennaam.


... Tja wat is dan slim?
 
Timen kut

Timen kut

06/02/2009 21:23:00
Quote Anchor link
Bramboos schreef op 06.02.2009 21:19:
Dan zou je ook je php-code aan moeten passen omdat je daar het ID hard-coded in hebt staan.



Je ID niet hardcoden.. die ID haal je uit je database uiteraard....
 
Naam Loos

Naam Loos

06/02/2009 21:26:00
Quote Anchor link
http://img4.imageshack.us/img4/7933/toevoegwe4.jpg

Zo heb ik mijn toevoeg scriptje... zo wil ik ook het update scriptje hebben.
Je krijgt eerst een lijst met artiesten te zien je klikt op een artiest en het bovenstaande schermpje komt er dan te staan maar dan staan de huidige gegevens er.

Is dan id of artiest makkelijker?
Gewijzigd op 01/01/1970 01:00:00 door Naam Loos
 
Timen kut

Timen kut

06/02/2009 21:35:00
Quote Anchor link
bij het uitlussen van die artiesten kun je toch hun ID in een link zetten?
uit vorig voorbeeld:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
while($row = mysql_fetch_array($result)){
<
a href="algemeenedit.php?del='.$row['algemeenID'].'"><img src="menu/delete.jpg" border="0"></a>

<
a href="algemeenedit.php?edit='.$row['algemeenID'].'"><img src="menu/edit.gif" border="0"></a>';
}

?>
 
Naam Loos

Naam Loos

06/02/2009 22:01:00
Quote Anchor link
ja dat is niet zo moeilijk, het probleem is: het formulier
 
Justin S

Justin S

07/02/2009 00:28:00
Quote Anchor link
IN je formulier verwerk je toch geen UPDATE-waarden, dat doe je pas als er op submit is gedrukt. Alle antwoorden zijn gegeven dus het zou moeten lukken als je de artiesten uitfilterd op hun unieke ID...
 
Lode

Lode

07/02/2009 00:38:00
Quote Anchor link
gewoon een sprintf(); string maken van de invoer en die als een soort template gebruiken?
 
Timen kut

Timen kut

07/02/2009 09:55:00
Quote Anchor link
Als jij een lijst maakt van alle artiesten in je database....
krijg je iets als:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
//query
$result = mysql_query($query);
while($row=mysql_fetch_array($result)){
echo '<a href="editartiest.php?id='.$row['artiestID'].'">$row['artiestnaam']</a>';
}

?>

als je dan vervolgens op artiest klikt krijg je:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
//query waar je single ID op haalt(Where artiestID=$_GET['id'])
while($row=mysql_fetch_array($result)){
echo '
naam:<input type="text" name="artiest" value="'
.$row['artiest.'">
';
}

?>


Vanaf daar moet je je echt zelf kunnen redden. anders wordt het tijd om effe back to basic te gaan met je formuliertjes, GET's en POST's
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.