Toon posts:

[PHP] trouble..

Pagina: 1
Acties:
  • 38 views sinds 30-01-2008

Verwijderd

Topicstarter
Fixed!

Bedankt! Het lag inderdaad aan de php.ini waarin globals 'Off' stonden ipv 'On' zoals dat op mijn webserver blijkbaar het geval is.. Toch maar es checken of het ook anders kan..

Greetz~


Oude Bericht:

Ik heb een scriptje geschreven waarmee ik makkelijk gegevens in en uit een mysql database kan lezen.. (werkt perfect op internet, vb http://www.heidebedrijven.com/worldmodels.com/show_model.php) Nu heb ik vanmiddag mijn laptop van een localhost voorzien (apache, php, mysql alles werkt perfect..) En wilde ik het webapplicatietje overzetten.. Ik heb de volgende dingen aangepast:

- Alle adres pointers veranderd naar hun nieuwe locaties (localhost, username, passwords en directories etc.)
- De database overgezet naar de nieuwe database binnen het lokale intranet

Daarmee dacht ik dus klaar te zijn. Na het testen van de applicatie kon ik WEL:

- Gegevens uit de tabel lezen

Maar NIET:
- Editen
- Deleten

(De velden in het 'manage' scherm zijn dus blanco, en de knop add record linked niet naar admin.php (zoals PHP_SELF) maar naar de root in 1x.. :?

Ik krijg geen error, het scherm laad alleen de gegevens zijn niet zichtbaar en/of er gebeurt gewoon niks na de auto-refresh/update..

Mijn invoervelden, deletebuttons e.d. werken allemaal met een $PHP_SELF functie.. Ik weet haast wel zeker dat de fout hier ligt, maar ik kan er niet achterkomen waarom het nu op internet wel werkt maar niet op mijn locale server..

Stukje voorbeeld code:
code:
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
// run SQL against the DB

$result = mysql_query($sql);

echo "<br><p>Record updated/edited!</p><a href=$PHP_SELF>[ Refresh ]</a>";

} elseif ($delete) {

// delete a record

$sql = "DELETE FROM worldModels WHERE id=$id"; 

$result = mysql_query($sql);

echo "<br><p>$sql Record deleted!</p><a href=$PHP_SELF>[ Refresh ]</a>"; } else {

// this part happens if we don't press submit

if (!$id) {

// print the list if there is not editing

$result = mysql_query("SELECT * FROM worldModels",$db);

while ($myrow = mysql_fetch_array($result)) {

printf("<li><a href=\"%s?id=%s\">%s    </a>\n", $PHP_SELF, $myrow["id"], $myrow["name"]);

printf("   <a href=\"%s?id=%s&delete=yes\"><b>[Delete]</b></a><br><br>", $PHP_SELF, $myrow["id"]);


Iemand enig idee? bvd

[ Voor 56% gewijzigd door Verwijderd op 10-05-2004 20:32 . Reden: Fixed ]


  • Y0ur1
  • Registratie: Oktober 2000
  • Niet online
Tja rechten van de MySQL goed ingesteld?

Verwijderd

Misschien heb je een nieuwere versie van php te pakken, en kan ie je variabelen niet vinden.
Zie deze faq: P&W FAQ - PHP

  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 25-05 17:33
Hoe krijg jij de gegevens binnen van de pagina?

Gebruik je nu $var of $_POST['var'] / $_GET['var']?

  • ludo
  • Registratie: Oktober 2000
  • Laatst online: 01-03 18:17
PHP:
1
$_SERVER['PHP_SELF']
P&W FAQ - PHP :?

[ Voor 15% gewijzigd door ludo op 10-05-2004 20:14 ]


Verwijderd

Topicstarter
Sybr_E-N schreef op 10 mei 2004 @ 20:14:
Hoe krijg jij de gegevens binnen van de pagina?

Gebruik je nu $var of $_POST['var'] / $_GET['var']?
POST/GET:

code:
1
2
3
4
5
6
7
8
9
10
11
12
// Output back to start page
            if ( $this->show_start_page && $this->cur_page && ($this->num_pages >= $this->num_browse_links))
            {               
                $out .= '<a href="' . preg_replace("/\?.*/",'',$_SERVER['PHP_SELF']) .  '?BRSR=0'.$this->qs.'" '.$this->get_style('start_page').'>'.$this->text_start_page.'</a> ';
            }
            else
            {
                if ( $this->show_start_page && ($this->num_pages >= $this->num_browse_links))
                {
                    $out .= '<span '.$this->get_style_na('start_page').'>'.$this->text_start_page.'</span> ';
                }
            }


En dit werkte prima op internet.. Maar op mijn localserver draait t niet..

[ Voor 82% gewijzigd door Verwijderd op 10-05-2004 20:19 ]


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Lijkt mij een register_globals probleem. Werk de PHP FAQ eens door.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • dreambofh
  • Registratie: November 2000
  • Laatst online: 17-03 22:21
Dit lijkt me een verschil in de php configuratie in je PHP.ini

Misschien staat bij je ene server register globals=of en bij de andere op on.

Volgens mij kan je ook beter

PHP:
1
$_SERVER['PHP_SELF']


gebruiken i.p.v.

PHP:
1
$PHP_SELF

Verwijderd

Topicstarter
Thanks! Tis gelukt..

Verwijderd

Fixed!

Bedankt! Het lag inderdaad aan de php.ini waarin globals 'Off' stonden ipv 'On' zoals dat op mijn webserver blijkbaar het geval is.. Toch maar es checken of het ook anders kan..
Ja, door deze globale variabelen (arrays) te gebruiken:
$_SERVER
$_POST
$_GET
(en voor sessies/koekjes:)
$_SESSION
$_COOKIE

Tis allemaal zo simpel... ;)

[ Voor 5% gewijzigd door Verwijderd op 10-05-2004 20:35 ]


  • LinuX-TUX
  • Registratie: December 2003
  • Laatst online: 10:16
Verwijderd schreef op 10 mei 2004 @ 20:11:
Fixed!

Bedankt! Het lag inderdaad aan de php.ini waarin globals 'Off' stonden ipv 'On' zoals dat op mijn webserver blijkbaar het geval is.. Toch maar es checken of het ook anders kan..

Greetz~
Werd hier net ook al boven gezegt; gebruik dan $_GET['<naampje van de input uit de form>'] of $_POST['<hetzelfde>']

Deze dingen zijn niet voor niets geintroduceerd, dus zou ik de PHP pagina's er maar naar gaan aanpassen. (iets wat idd niet leuk is als je veel pagina's te gaan hebt, maar wel degelijk de moeite waard is voor veiligheid ed)

Nu kan je bv direct naar de URL van zo'n pagina gaan en ?action=delete&ID=12 toevoegen en het wordt uitgevoerd. Als je je form op method="post" zet en je gebruikt de juiste PHP, zijn dit soort simpele geintjes alweer buitengesloten ;) (maar natuurlijk weer niet onmogelijk voor de die-hards }))

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

goh, en d'r is niet al 3x naar de FAQ verwezen, dat scheelt.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1

Dit topic is gesloten.