notitie in database opslaan

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Fabian webstars

Fabian webstars

16/02/2015 21:24:35
Quote Anchor link
hoi allemaal,

ik ben nieuw hier, want ik ben sinds kort pas bezig met php.
Ik heb een vraagje (eigenlijk heel veel :P)

Want ik heb een eigen forum met inlog functie enzo, dit werkt allemaal prima.
Nu wil ik in dat forum, dat je een mogelijkheid hebt om een notitie blok hebt en kan verwijderen/aanmaken/veranderen

heeft iemand zo'n script voor mij?

De rest van de vragen stel ik een andere keer wel :P

Met vriendelijke groet
Fabian
 
PHP hulp

PHP hulp

22/12/2024 19:08:46
 
- Ariën  -
Beheerder

- Ariën -

16/02/2015 21:30:18
Quote Anchor link
Een kant en klaar script heb ik niet. Maar met een INSERT en UPDATE query moet je wel ver komen.
 
Fabian webstars

Fabian webstars

16/02/2015 21:36:58
Quote Anchor link
ja klopt, maar ik dacht misschien heeft iemand een scriptje voor me, ik ben redelijk nieuw met dit soort dingen en ik ga al snel de mist in met mijn codes

ik ga het nog een keer proberen :)
Maar als iemand nog een scriptje heeft ofzo hoor ik het graag!!!
 
- Ariën  -
Beheerder

- Ariën -

17/02/2015 10:21:13
Quote Anchor link
Oefening baart kunst, van een kant en klaar script leer je niks ;).
 
Koen Hollander

Koen Hollander

17/02/2015 13:43:27
Quote Anchor link
Beter probeer je het zelf uit, als je na wat proberen er nog steeds niet uit komt helpen we je graag. :)
 
Fabian webstars

Fabian webstars

20/02/2015 17:23:10
Quote Anchor link
ik heb nu dit (het onderstaande script) om de gegevens uit de database te bekijken (van internet gehaald :P). Dit werkt allemaal prima! Ik weet niet of dat het veilig en handig is maar oké daar verdiep ik me later wel weer in (wanneer ik het online zet)

ik heb heel veel geprobeerd enzo maar nog te weinig kennis om zelf iets te maken
ik krijg het dan ook niet voor elkaar om een script te schrijven en te vinden hoe je je notitie kan veranderen

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
<?php
 // Make a MySQL Connection
 mysql_connect("localhost", "*******", "******") or die(mysql_error());
 mysql_select_db("*******") or die(mysql_error());

// Get all the data from the "example" table
 $result = mysql_query("SELECT emp_name FROM persons")
 or die(mysql_error());

echo "<table>";
 echo "<tr> <th>Name</th>  </tr>";
 // keeps getting the next row until there are no more to get
 while($row = mysql_fetch_array( $result )) {
 // Print out the contents of each row into a table
 echo "<tr><td>";
 echo $row['emp_name'];
echo "</td><td>";
 }

 echo "</table>";

?>


Hebben jullie tips? en kan iemand AUB een script voor mij schrijven zodat een bezoeker deze gegevens kan veranderen. Als je meer informatie nodig hebt kan ik die zeker sturen!
 
- Ariën  -
Beheerder

- Ariën -

20/02/2015 17:38:59
Quote Anchor link
Dan moet je een UPDATE-query uitvoeren.

- Verder zijn de mysql_*() functies verouderd, en raad ik die van mysqli_*() aan
- Goede foutafhandeling ontbreekt er.
- Je connectie kan je beter includeren in een apart bestand
 
Thomas van den Heuvel

Thomas van den Heuvel

20/02/2015 19:29:20
Quote Anchor link
- (input filtering en) output escaping
- het expliciet instellen van de gebruikte character encoding
- het genereren van een compleet, en kloppend, HTML-document

Daarnaast, vraag jezelf af waarom je statische HTML zou willen echo'en, je kunt op elk moment "uit" je PHP-code stappen door een blok af te sluiten en op elk moment je PHP-code hervatten door een (nieuw) blok te openen.
 
Fabian webstars

Fabian webstars

20/02/2015 20:17:22
Quote Anchor link
Dank jullie wel!

Zouden jullie misschien mijn script kunnen verbeteren? Dan weet ik zeker dat ik het goede gebruik..
En daarnaast heeft iemand een update query voor mij?
 
- Ariën  -
Beheerder

- Ariën -

20/02/2015 20:19:23
Quote Anchor link
Niet lullig bedoeld, maar je kan een hoop tutorials op internet vinden.
Probeer eens wat, zou ik zeggen ;-)
 
Fabian webstars

Fabian webstars

20/02/2015 20:24:17
Quote Anchor link
haha is goed! Maar ik heb al best veel gezocht hoor.
ik ga proberen een nieuw script te maken (Zelf) en dan weer hier neer te zetten, zouden jullie hem dan nog een keer willen nakijken?
Gewijzigd op 20/02/2015 20:24:40 door Fabian webstars
 
- Ariën  -
Beheerder

- Ariën -

20/02/2015 20:28:11
Quote Anchor link
Op http://www.phptuts.nl staan goede tutorials, waarmee je wel uit de voeten kan.
 
Fabian webstars

Fabian webstars

21/02/2015 01:06:55
Quote Anchor link
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
<?php // Get all the data from the "example" table
if
{
$result = mysqli_query("SELECT emp_name FROM persons")
}

 else
  {
  die(mysqli_error());
  }

 
 // Get all the data from the "example" table
 $result = mysqli_query("SELECT emp_name FROM persons")
 or die(mysqli_error());
?>


Wat doe ik fout? :(
en is dat mysqli goed?
Gewijzigd op 21/02/2015 01:07:58 door Fabian webstars
 
- Ariën  -
Beheerder

- Ariën -

21/02/2015 07:36:36
Quote Anchor link
Je gebruikt geen voorwaarde bij je if.

Verder raad ik je aan om deze tutorials te lezen en te beoefenen:
PHP: http://phptuts.nl/view/39/
MySQL + PHP: http://phptuts.nl/view/41/
MySQLi: http://phptuts.nl/view/26/1/
Gewijzigd op 21/02/2015 07:37:38 door - Ariën -
 
Randy vsf

Randy vsf

21/02/2015 08:33:26
Quote Anchor link
Bij mysqli_query mist ook nog de link.
http://php.net/manual/en/mysqli.query.php
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/02/2015 10:07:18
Quote Anchor link
En zorg dat error reporting aan staat.
 
Fabian webstars

Fabian webstars

21/02/2015 15:07:28
Quote Anchor link
nogmaals bedankt voor de reacties. Ik heb heel erg mijn best gedaan en volgens mij is het aardig gelukt :).
het werkt allemaal en alles is veranderd naar mysqli ik heb het bestand geinclude zoals er verteld werd en daar staat mijn fout afhandeling ook in.
Ik heb php en html van elkaar gescheiden

ik heb nog 3 vragen:
-wat is een error reporting
- het expliciet instellen van de gebruikte character encoding <<--- ???
- (input filtering en) output escaping <<-- ???
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
26
27
28
29
30
31
32
33
<?php
include('config.php');
?>

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>resultaten</title>
</head>
<body>
<table>
<tr> <th> name</th> </tr>


<?php
while($row = mysqli_fetch_array($result)) {
      ?>

      
      <tr><td>
      
      <?php
  echo $row["emp_name"];
      ?>

      
      </td></tr>
      <?php
  }
  ?>

  
  </table>
  
  </body>
  </html>

- Aar -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 21/02/2015 18:00:37 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

21/02/2015 18:17:08
Quote Anchor link
Error_reporting is de manier hoe PHP met foutmeldingen omgaat. Bij het ontwikkelen hoort deze altijd aan te staan. Als je site 'live' gaat voor je bezoekers, dan dient deze uit te staan.
Zie ook: http://php.net/manual/en/function.error-reporting.php

De character-encoding voor HTML5 is standaard altijd UTF-8.

In- en output filtering is het filteren van de data die je aan je script meegeeft. Denk bijvoorbeeld aan SQL-injection. In dit geval kan ik niet beoordelen of het nodig is, omdat ik geen inzicht heb in je $result. Als deze een WHERE-voorwaarde kent met een $_POST, $_GET of $_COOKIE variabele, dan moet je controleren of de ingevoerde data juist is, en deze escapen met mysqli_real_escape_string.
 
Thomas van den Heuvel

Thomas van den Heuvel

22/02/2015 00:54:05
Quote Anchor link
Character encoding beperkt zich niet tot het HTML-document alleen. Dit heeft ook betrekking op hoe je het PHP-bestand opslaat, hoe je (explictiet) de character encoding van het HTML document aangeeft (via een PHP-header of meta tag). Daarnaast is het ook heel belangrijk dat je op een juiste manier omgaat met je database in dit opzicht:
- de character encoding die je instelt als je een connectie maakt
- de character encoding van je database, tabellen en tabel-kolommen
- (en last but not least!) de character encoding van de DATA die je hier naar wegschrijft

Ongeacht welke character encoding je kiest is het het beste (en eenvoudigste) om deze overal hetzelfde te houden.

Input filtering en output escaping hoef je niet per se overal toe te passen, maar het kan handig zijn om dit toch overal te doen. Je hoeft dan namelijk geen afweging te maken of het wel of niet echt nodig is.

Input filter en output escaping zijn onder andere belangrijk:
- in je database (controleer de DATA elementen op vorm, escape DATA elementen met een _real_escape_string functie)
- in je HTML-document (en dan met name output escaping: als er in bepaalde output geen HTML mag zitten, gebruik dan altijd htmlspecialchars)

Bij output escaping is het bijna altijd van zeer groot belang dat een juiste character encoding is ingesteld, anders werkt deze mogelijk niet naar behoren, met alle gevolgen (risico's) qua veiligheid van dien.
Gewijzigd op 22/02/2015 00:55:35 door Thomas van den Heuvel
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/02/2015 11:02:49
Quote Anchor link
Mooie woorden allemaal maar waar het voor Fabian nu even om gaat is dit.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
?>


Als je dat aan het begin van je code zet zullen alle fouten op het scherm vermelden als je de pagina opvraagt. Deze fouten helpen jou om
a) te zien dat er een fout in je code zit
b) wat er mogelijk fout gaat en waar de fout zit





Toevoeging op 22/02/2015 11:09:46:

Wanneer je meerdere fouten krijgt kijk je enkel naar de eerste (bovenste) foutmelding omdat de andere maar al te vaak veroorzaakt worden door de eerste.
 
Thomas van den Heuvel

Thomas van den Heuvel

22/02/2015 14:44:18
Quote Anchor link
Quote:
Mooie woorden allemaal maar waar het voor Fabian nu even om gaat is dit.

De topicstarter vroeg hier zelf om. Deze denigrerende reactie voegt daarentegen weinig toe. Het zijn meestal niet de bugs die overduidelijk fouten opleveren (parse error, ongedefinieerde index etc.) maar complexere samenlopen van omstandigheden die zorgen voor complexere fouten, of veiligheidslekken die niet in eerste oogopslag evident zijn voor de beginnende programmeur. Het lijkt mij dan nog steeds beter om je te bedienen van een aantal simpele regels die wegsturen van dit soort situaties, in plaats van deze regels weg te wuiven als zijnde onbeduidend of onnodig complex.

Tenzij het je opzet is om iemand door de poep te laten banjeren.

Natuurlijk is het ook belangrijk dat mensen hun eigen code kunnen debuggen, dus zet ook vooral error_reporting en display_errors aan.

Overigens zou de waarde van 'display_errors' vanaf PHP versie 5.2.4 strict genomen 'stdout' moeten zijn om foutmeldingen op het scherm te tonen.

Ik zie hier een hele hoop mensen vrolijk hun eerste formuliertje in elkaar zetten en dat is allemaal goed en wel, maar ik denk dat een site als deze toch wel wat verder kan gaan dan het enkel helpen met het oplossen van het "directe probleem", en ook wijzen op mogelijke risico's en alternatieve oplossingen (wat soms wordt er gewoon voortgeborduurd op een verkeerd ontwerp). Of stelt deze site zich niet mede tot doel om bezoekers zelf te leren na te denken over code?

De laatste tijd is het ook vaak hetzelfde liedje: mensen weten niet hoe ze iets moeten debuggen. Het antwoord is ook vaak hetzelfde. Als je dat soort standaard oplossingen nou eens als voorwaarde stelt om uit te proberen voordat iemand hier uberhaupt een vraag stelt?

Als je iemand niet motiveert een probleem zelf op te lossen dan staan ze, voordat je een antwoord hebt op hun vraag, al klaar met een volgende (en compleet andere) vraag, die zelfs geregeld in dezelfde thread wordt gesteld.
 

Pagina: 1 2 volgende »



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.