abonnement Unibet Coolblue Bitvavo
pi_28114587
quote:
Op dinsdag 21 juni 2005 12:30 schreef Scorpie het volgende:

[..]

Nee eerder een algemene stop...
Het kan niet. Stel je de volgende code voor:

1
2
3
4
5
6
<?php
while (!$pasen_en_pinksteren_op_een_dag) {
    
voer_iets_uit();
}
stop_alle_loops();
?>

Je kunt nu wel stop_alle_loops() onderaan je script zetten, maar hij zal het nooit uitvoeren omdat hij nog in de loop zit.
pi_28114779
Scorpie, een script waarbij een loop blijft hangen zit sowieso niet goed in elkaar, het is niet goed daar omheen te gaan werken. Als het een intentionele loop is, dan zijn er andere methodes om ervoor te zorgen dat je loop niet blijft hangen als je een request stopt. Zie bijvoorbeeld connection_aborted().
pi_28115047
ik bedoel ook niet dat hij alle loops moet stoppen, maar meer met PHP executen stoppen de loops zijn allemaal wel goed, maar bij ASP bijvoorbeeld kan je echt een soort STOP teken geven...kan dit in PHP?
pi_28115427
quote:
Op dinsdag 21 juni 2005 12:57 schreef Scorpie het volgende:
ik bedoel ook niet dat hij alle loops moet stoppen, maar meer met PHP executen stoppen de loops zijn allemaal wel goed, maar bij ASP bijvoorbeeld kan je echt een soort STOP teken geven...kan dit in PHP?
Met exit() of de alias die() kan dat
  woensdag 22 juni 2005 @ 21:49:06 #180
26631 Boink
Ik ben er klaar voor!
pi_28145791
Ik heb even een voorbeeldje nodig van de update syntax
het was iets van
UPDATE tabelnaam WHERE veldnaam = 'ofzo'
en dan moet er iets gereplaced worden ipv ofzo dat gedeelte weet ik niet meer
was het zoals dit? Want dit wil niet werken
pi_28146228
zoiets?

1
2
3
<?php
$query
= "UPDATE table SET veld = '".$value."' WHERE dag = 'zaterdag'";
?>


Er bestaat trouwens ook altijd nog zoiets als een online handleiding die sneller is dan dit topic .....
Update
Handleiding

[ Bericht 11% gewijzigd door ikke_ook op 22-06-2005 22:09:59 ]
  donderdag 23 juni 2005 @ 12:44:18 #182
42636 TheSeeker_NL
Damn fine coffee
pi_28159509
Jo!

Situatie:

news_new.php (hier kan een nieuw bericht worden opgesteld)
news.php (hier is het php gedeelte voor het invoeren van het bericht in de database)

mijn probleem is dat het bericht niet wordt ingevoerd in de database en ik weet niet waar het fout gaat.

news_new.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<form action="news.php" method="post">
<input type="submit" name="action" value="insert">
  
  <table width="65%" border="0" cellspacing="0">
  <tr> 
    <td><p>Berichttitel</p></td>
    <td><input type="text" name="news_header" size="50" maxlength="30"></td>
  </tr>
  <tr> 
    <td><p>Datum/tijd</p></td>
    <td><input type="text" name="news_datetime" value="<? echo date("Y-m-d H:i:s") ?>" size="19" maxlength="19"></td>
  </tr>
  <tr> 
    <td height="71"><p>Berichttekst</p></td>
    <td><textarea name="news_main" cols="50"></textarea></td>
    </td>
  </tr>
  <tr> 
      <td colspan="2"> 
        <input name="submit" type=submit value=Toevoegen>
      </td>
  </tr>
</table>
</form>


news.php

1
2
3
4
5
6
7
8
9
10
   // toevoegen van een nieuw nieuwsbericht 
  if ($action == "insert") {
  $news_main = nl2br($news_main);
  $news_main = eregi_replace("\n", "", $news_main);
  $news_SQL_insert = "INSERT INTO news (news_header, news_datetime, news_main) VALUES
  ('$news_header', '$news_datetime', '$news_main')";
  $bool = mysql_query($news_SQL_insert);
  if (bool == 1) echo "<SCRIPT LANGUAGE=JavaScript>window.alert('het bericht is toegevoegd')</SCRIPT>";
  if (bool <> 1) echo "<SCRIPT LANGUAGE=JavaScript>window.alert('het bericht is niet toegevoegd')</SCRIPT>";
  }


volgensmij gebeurd de action = insert niet, want ik krijg geen window alert én er wordt ook niks toegevoegd in de database. Iemand die me uit de brand kan helpen?
pi_28159624
register_globals?
pi_28159648
In news.php mag op regel 8 en 9 een $ voor bool
  donderdag 23 juni 2005 @ 12:54:52 #185
42636 TheSeeker_NL
Damn fine coffee
pi_28159805
quote:
Op donderdag 23 juni 2005 12:49 schreef Light het volgende:
In news.php mag op regel 8 en 9 een $ voor bool
scherp! maar helaas is dit niet de bottleneck
pi_28160100
Plaats eens bovenaan de pagina
print'<pre>';
print_r($_POST);
print'</pre>';

Zo kan je in iedergeval controleren wat er binnenkomt.
Ik zie ook nergens dat je de post waarders controleert en in de variable $news_datetime zet

Ik doe dat altijd als volgende
<?
foreach($_POST as $post => $value)
{
$POST[$post] = htmlspecialchars(addslashes($value));
}

Jouw query ziet er dan als volgt uit
$news_SQL_insert = "INSERT INTO news (news_header, news_datetime, news_main) VALUES
('$POST[news_header]', '$POST[news_datetime]', '$POST[news_main]')";
  donderdag 23 juni 2005 @ 13:09:24 #187
42636 TheSeeker_NL
Damn fine coffee
pi_28160252
quote:
Op donderdag 23 juni 2005 13:04 schreef Darkomen het volgende:
Plaats eens bovenaan de pagina
print'<pre>';
print_r($_POST);
print'</pre>';

Zo kan je in iedergeval controleren wat er binnenkomt.
Ik zie ook nergens dat je de post waarders controleert en in de variable $news_datetime zet

Ik doe dat altijd als volgende
<?
foreach($_POST as $post => $value)
{
$POST[$post] = htmlspecialchars(addslashes($value));
}

Jouw query ziet er dan als volgt uit
$news_SQL_insert = "INSERT INTO news (news_header, news_datetime, news_main) VALUES
('$POST[news_header]', '$POST[news_datetime]', '$POST[news_main]')";
ik denk dat het probleem hem zit in het versturen van de gegevens van news_new.php naar news.php, hij kan niks toevoegen omdat de action insert niet werkt....

ik denk dat de fout op news_new.php zit.

ik heb die query wel veranderd, maar hij doet niets meer of minder op het moment....
pi_28160700
en als je $_GET[action] gebruikt?
pi_28160774
Je weet trouwens dat de value en name van een submit button niet altijd meegestuurd wordt he. gebruik voor zulke dingen immer een input type='hidden".

-r-
pi_28160805
quote:
Op donderdag 23 juni 2005 13:24 schreef Roönaän het volgende:
Je weet trouwens dat de value en name van een submit button niet altijd meegestuurd wordt he. gebruik voor zulke dingen immer een input type='hidden".

-r-
daar zeg je idd wat!
of <form action="news.php?action=insert" method="post">
  donderdag 23 juni 2005 @ 21:56:29 #191
42636 TheSeeker_NL
Damn fine coffee
pi_28175718
quote:
Op donderdag 23 juni 2005 13:24 schreef Roönaän het volgende:
Je weet trouwens dat de value en name van een submit button niet altijd meegestuurd wordt he. gebruik voor zulke dingen immer een input type='hidden".

-r-
erm mijn boek zegt ook dat ik deze regel moet gebruiken
1<input type="hidden" name="action" value="insert">


maar als ik hidden gebruik dan is er geen knop om op te drukken ik zal je wel verkeerd begrijpen... misschien kan je het duidelijker uitleggen (newbie proof )
pi_28176906
quote:
Op donderdag 23 juni 2005 21:56 schreef TheSeeker_NL het volgende:

[..]

erm mijn boek zegt ook dat ik deze regel moet gebruiken
[ code verwijderd ]

maar als ik hidden gebruik dan is er geen knop om op te drukken ik zal je wel verkeerd begrijpen... misschien kan je het duidelijker uitleggen (newbie proof )
Dat werkt alleen als je maar 1 submit knop hebt. Als je meerdere submit knoppen hebt, dan zal je toch gebruik moeten maken van de name/value van de knop waarop geklikt wordt. Het lastige is dat de value van een submit knop de tekst op de knop is, en die tekst kan bijvoorbeeld van de taal afhankelijk zijn.
Dat kan je op verschillende manieren oplossen
  • elke submit button een unieke name geven. In de postback controleer je of een van deze names geset is (zoals op fok)
  • de submit buttons onclick een hidden field laten vullen (zoals op GoT)
  • de submit buttons een name als "action[save]" te geven. In de postback lees je dan de key van de $_POST['action'] array (zoal ik het meestal doe)
  • Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      vrijdag 24 juni 2005 @ 11:24:56 #193
    42636 TheSeeker_NL
    Damn fine coffee
    pi_28187930
    quote:
    Op donderdag 23 juni 2005 22:30 schreef SuperRembo het volgende:

    [..]

    Dat werkt alleen als je maar 1 submit knop hebt. Als je meerdere submit knoppen hebt, dan zal je toch gebruik moeten maken van de name/value van de knop waarop geklikt wordt. Het lastige is dat de value van een submit knop de tekst op de knop is, en die tekst kan bijvoorbeeld van de taal afhankelijk zijn.
    Dat kan je op verschillende manieren oplossen
  • elke submit button een unieke name geven. In de postback controleer je of een van deze names geset is (zoals op fok)
  • de submit buttons onclick een hidden field laten vullen (zoals op GoT)
  • de submit buttons een name als "action[save]" te geven. In de postback lees je dan de key van de $_POST['action'] array (zoal ik het meestal doe)
  • ik hoef maar 1 submit knop! ik wil een titel in kunnen voeren, ik wil een berichtje in kunnen voeren, dan op een knop drukken, en dan moet hij GVD verzonden worden, maar hij wilt maar niet (beetje gefrustreerd van deze poep)

    ik ben 't zat!

    (maar bedankt voor je hulp )
    pi_28188286
    @TheSeeker_NL

    Een beetje basis is nooit weg.

    1
    2
    3
    4
    5
    6
    <form action="pagina.php" method="post">
      <input type="hidden" name="verstuurd" value="true" />
      <input type="text" name="titel" /><br />
      <textarea name="bericht"></textarea><br />
      <input type="submit" value="Opslaan" />
    </form>


    Oftewel, een FORM met een gedefinieerde ACTION en METHOD (allebei altijd opgeven). Als je wilt controleren of een formulier is verzonden, doe dit dan met een hidden INPUT (deze krijg je dus niet te zien op je pagina). De value van de INPUT met type="submit" dient als tekstuele waarde voor de knop die je op de pagina te zien krijgt. Niet alle browsers sturen de waarde van de submit-knop mee, dus het is ook niet nodig om je submit-knop een naam te geven. Voor de volledigheid nog even pagina.php:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $verstuurd
    = $_POST['verstuurd'];

    if (
    $verstuurd == 'true') {
        
    $titel = $_POST['titel'];
        
    $bericht = $_POST['bericht'];
        
    mysql_query('INSERT INTO `tabel` (`titel`, `bericht`) VALUES (\'' . mysql_real_escape_string($titel) . '\', \'' . mysql_real_escape_string($bericht) . '\')');
    }
    ?>


    Hopelijk heb je er iets aan.

    [ Bericht 2% gewijzigd door JeRa op 24-06-2005 11:40:34 (title ipv titel) ]
    pi_28188446
    moet je wel $_POST['verstuurd'] of $_REQUEST['verstuurd'] gebruiken als je een post form hebt .
    pi_28188507
    quote:
    Op vrijdag 24 juni 2005 11:39 schreef Roönaän het volgende:
    moet je wel $_POST['verstuurd'] of $_REQUEST['verstuurd'] gebruiken als je een post form hebt .
    Wat? Waar?

    overigens krijg ik van $_REQUEST een vieze smaak in m'n mond *denkt terug aan ASP-tijd* ik ben van mening dat je precies moet weten waar je variabelen vandaan komen
    pi_28188618
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <form action="news.php?action=insert" method="post">
      <table width="65%" border="0" cellspacing="0">
      <tr> 
        <td><p>Berichttitel</p></td>
        <td><input type="text" name="news_header" size="50" maxlength="30"></td>
      </tr>
      <tr> 
        <td><p>Datum/tijd</p></td>
        <td><input type="text" name="news_datetime" value="<? echo date("Y-m-d H:i:s") ?>"
     size="19" maxlength="19"></td>
      </tr>
      <tr> 
        <td height="71"><p>Berichttekst</p></td>
        <td><textarea name="news_main" cols="50"></textarea></td>
        </td>
      </tr>
      <tr> 
          <td colspan="2"> 
            <input name="submit" type=submit value=Toevoegen>
          </td>
      </tr>
    </table>
    </form>

    en
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // toevoegen van een nieuw nieuwsbericht 
    if ($_GET['action'] == 'insert' && Isset($_POST['submit'])) {
       $news_main = nl2br($_POST['news_main']);
       $news_main = eregi_replace("\n", "", $news_main);
       $news_SQL_insert = "INSERT INTO news (news_header, news_datetime, news_main) 
    VALUES ('".$_POST['news_header']."', '".$_POST['news_datetime']."', '".$news_main."')";
       $bool = mysql_query($news_SQL_insert);
       if ($bool == 1) echo "<SCRIPT LANGUAGE=JavaScript>window.alert('het bericht is 
    toegevoegd')</SCRIPT>";
       if ($bool <> 1) echo "<SCRIPT LANGUAGE=JavaScript>window.alert('het bericht is niet 
    toegevoegd')</SCRIPT>";
    }


    Zo dan?
    pi_28188749
    quote:
    Op vrijdag 24 juni 2005 11:40 schreef JeRa het volgende:

    [..]

    Wat? Waar?

    overigens krijg ik van $_REQUEST een vieze smaak in m'n mond *denkt terug aan ASP-tijd* ik ben van mening dat je precies moet weten waar je variabelen vandaan komen
    daarvoor heb je if($_SERVER['REQUEST_METHOD'] == 'POST')....
    pi_28188856
    quote:
    Op vrijdag 24 juni 2005 11:47 schreef Roönaän het volgende:

    [..]

    daarvoor heb je if($_SERVER['REQUEST_METHOD'] == 'POST')....
    Beetje omslachtig. Wat nou als je pagina.php?var=true aanroept met ook een POST-field met 'var'='true', wordt het dan niet nogal triviaal?
      vrijdag 24 juni 2005 @ 11:55:18 #200
    42636 TheSeeker_NL
    Damn fine coffee
    pi_28189074
    quote:
    Op vrijdag 24 juni 2005 11:43 schreef ikke_ook het volgende:

    [ code verwijderd ]

    en
    [ code verwijderd ]

    Zo dan?
    omfg, het werk!

    Ik moet maar eens goed bestuderen hoe het komt dat het nu wel werkt, maar ik wil jullie eerst even bedanken, want volgensmij moet het reten vervelend zijn om zo'n noob als mij te proberen helpen. Anyways, ik ga nu de functie bewerken erin proberen te bouwen... wish me luck

    [ Bericht 16% gewijzigd door TheSeeker_NL op 24-06-2005 12:57:19 ]
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')